REGEXP_REPLACEは、文字列内で正規表現パターンを検索して、別の文字列で置換します。デフォルトでは、この関数は、正規表現パターンのすべての出現箇所をreplace_stringで置換してsource_charを返します。
VARCHAR2 | CLOB
REGEXP_REPLACE(source_char, pattern
[, replace_string
[, position
[, occurrence
[, match_parameter ]
]
]
]
)
source_char: 検索範囲のテキスト式です。
pattern: 検索対象のテキスト式です。通常はテキスト・リテラルで、最大512バイトが可能です。
replace_string: source_charのpatternを置換するテキストです。
position: 文字列内で関数が検索を開始する文字を示す0以外の整数です。positionが負の場合、INSTRは文字列の最後から逆方向に数えて検索します。デフォルト値の1では、関数が文字列の最初の文字から検索を開始します。
occurrence: 関数で検索する文字列の出現箇所を示す整数です。occurrenceの値は正であることが必要です。デフォルト値の1では、関数がsubstringの最初の出現箇所を検索します。
return_option: 一致した位置を返す場合は0(デフォルト)、一致の直後の文字の位置を返す場合は1です。
match_parameter: 関数のデフォルト照合動作を変更できるテキスト・リテラルです。次の1つ以上の値を指定できます。
c: 照合で大文字と小文字を区別します。
i: 照合で大文字と小文字を区別しません。
m: ソース文字列を複数行とみなします。REGEXP_INSTRは、^および$をソース文字列全体の最初または最後としてだけではなく、ソース文字列における任意の行の、それぞれ最初および最後として解釈します。デフォルトでは、REGEXP_INSTRはソース文字列を1行とみなします。
n: ピリオド(ワイルドカード文字)が一致する文字に改行文字を含めます。デフォルトでは、改行文字は含まれません。
x: 空白を無視します。
REGEXP_REPLACE('500 Oracle Parkway, Redwood Shores, CA', '( ){2,}', ' ')は、余分な空白を削除して文字列500 Oracle Parkway, Redwood Shores, CAを返します。
Copyright (C) 2003, 2007, Oracle. All rights reserved.