Oracleでは、substr関数をinstr関数と組み合わせて使用して、文字列から文字列を抽出します。以下に例を示します。
Instr関数の例を使用したSubstr関数
1。指定した文字の後に文字列を抽出します
以下の例では、$記号の後の残りの文字列を抽出します。
set serveroutput on; declare v_string varchar2(20) := 'USD$500.67'; v_string1 varchar2(20); begin v_string1 := substr(v_string, instr(v_string, '$') +1); dbms_output.put_Line(v_string1); end; /
出力
500.67 PL/SQL procedure successfully completed.
2。指定された文字の後の文字列を別の指定された文字に抽出します
この例では、最初に指定された文字列「$」から2番目に指定された文字列「。」に抽出します。
set serveroutput on; DECLARE v_string VARCHAR2 (20) := 'USD$500.67'; v_string1 VARCHAR2 (20); BEGIN v_string1 := SUBSTR (v_string, INSTR (v_string, '$'), INSTR (v_string, '.') - INSTR (v_string, '$')); DBMS_OUTPUT.put_Line (v_string1); END; /
出力
$500 PL/SQL procedure successfully completed.
関連項目:
- Oracleで文字列内の文字数をカウントする
- Forループを使用してカーソルからデータを取得する方法
- OracleでPL/SQLブロックを実行する方法