REGEXP_EXTRACT 関数は、source 文字列で正規表現 pattern との一致を検索し、group_id で指定されたグループの内容を返します。
使用上の注意
REGEXP_EXTRACT 関数は、Hive 互換のデータ型エディションでは Java の正規表現仕様に従います。1.0 および 2.0 のデータ型エディションでは、MaxCompute の仕様に従います。
構文
STRING REGEXP_EXTRACT(STRING <source>, STRING <pattern>[, BIGINT <group_id>])パラメーター
source: 必須。STRING 型の値。このパラメーターは、検索対象の文字列を指定します。
pattern: 必須。STRING 型の定数または正規表現。このパラメーターは、照合するパターンを指定します。正規表現の記述方法の詳細については、「正規表現の仕様」をご参照ください。
group_id: オプション。BIGINT 型の値。値は 0 以上である必要があります。
group_id が指定されていない場合、デフォルト値は 1 で、関数は最初に一致したグループを返します。
group_id が指定されている場合、関数は一致したグループ group_id の内容を返します。
group_id が 0 の場合、関数は pattern 全体に一致する部分文字列を返します。
データは UTF-8 フォーマットで保存されます。中国語文字の 16 進数コード範囲は [\\x{4e00},\\x{9fa5}] です。
戻り値
STRING 型の値が返されます。以下のルールが適用されます。
pattern が空の文字列であるか、pattern にキャプチャグループが含まれず、かつ group_id が指定されていない場合、エラーが返されます。
説明SET odps.sql.bigquery.compatible=true;を実行して BigQuery 互換モードを有効にします。pattern にグループが含まれず、group_id が指定されていない場合、関数は pattern 全体に一致する部分文字列を返します。group_id が BIGINT 型でないか、0 未満の場合、エラーが返されます。
source、pattern、または group_id が NULL の場合、NULL が返されます。
関連関数
REGEXP_EXTRACT は文字列関数です。 他の文字列関数については、「文字列関数」をご参照ください。