適用対象:
Databricks SQL
Databricks Runtime 10.4 LTS 以降
str が regex と一致する場合に true を返します。 この関数は、 rlike 演算子のシノニムです。
構文
regexp_like( str, regex )
引数
-
str: 照合するSTRING式。 -
regex: パターンが一致するSTRING式。
返品
BOOLEAN です。
regex文字列は正規表現である必要があります。 サポートされている構文については 、正規表現 を参照してください。
リテラルを使用する場合は、エスケープ文字の前処理を回避するために raw-literal (r プレフィックス) を使います。
一般的なエラー状態
例
文字列がパターンと一致するかどうかをテストする
> SELECT regexp_like('Databricks SQL', r'^Data');
true
> SELECT regexp_like('Spark SQL', r'^Data');
false
単純な電子メール形式を検証する
> SELECT regexp_like('alice@example.com', r'^\w+@\w+\.\w+$');
true
> SELECT regexp_like('not-an-email', r'^\w+@\w+\.\w+$');
false
大文字と小文字を区別せずに照合する
大文字と小文字を無視するには、 (?i) インライン フラグを使用します。
> SELECT regexp_like('ERROR: disk full', r'(?i)error');
true
リテラル円記号と一致する
円記号は正規表現メタ文字であるため、リテラル円記号と \\を一致させます。 未加工リテラル (r プレフィックス) を使用すると、SQL エスケープ文字を 2 倍にする必要がなくなります。
> SELECT regexp_like(r'%SystemDrive%\Users\John', r'%SystemDrive%\\Users.*');
true
> SELECT regexp_like('%SystemDrive%\\Users\\John', '%SystemDrive%\\\\Users.*');
true
正規表現パターンが無効です
> SELECT regexp_like('abc', '[invalid');
Error: INVALID_PARAMETER_VALUE.PATTERN