このトピックでは、REGEXP_REPLACE 関数の使用方法について説明します。この関数は、指定された文字列を目的の文字列に置き換え、新しい文字列を返します。
制限事項
この関数は、Ververica Runtime(VVR) 3.0.0 以降を使用する Apache Flink 用 Realtime Compute でのみサポートされています。
構文
VARCHAR REGEXP_REPLACE(VARCHAR str, VARCHAR pattern, VARCHAR replacement)入力パラメーター
パラメーター | データ型 | 説明 |
str | VARCHAR | 指定された文字列。 |
pattern | VARCHAR | 置換する元の文字列。 |
replacement | VARCHAR | 元の文字列を置換するために使用される文字列。 |
重要
入力パラメーターが NULL であるか、正規表現が無効な場合、NULL が返されます。
システムは、pattern パラメーターと replacement パラメーターを正規表現として解析します。正規表現は、Java Pattern を使用して処理されます。したがって、pattern パラメーターと replacement パラメーターは Java Regex の構文に従う必要があります。
例
テストデータ
表 1. T1 str1(VARCHAR)
pattern1(VARCHAR)
replace1(VARCHAR)
2014-03-13
-
空の文字列
空の文字列
-
空の文字列
2014-03-13
空の文字列
s
2014-03-13
(
s
100-200
(\d+)
num
テストステートメント
SELECT REGEXP_REPLACE(str1, pattern1, replace1) as `result` FROM T1;テスト結果
result(VARCHAR)
20140313
空の文字列
s2s0s1s4s-s0s3s-s1s3s
NULL
num-num