適用対象:
Databricks SQL
Databricks Runtime 10.4 LTS 以降
str が regex と一致する場合に true を返します。 この関数は、 rlike 演算子のシノニムです。
構文
str [NOT] regexp regex
引数
-
str: 照合するためのSTRING内のUTF8_BINARY式。 -
regex: パターンが一致するSTRING式。
返品
BOOLEAN です。
regex文字列は正規表現である必要があります。 サポートされている構文については 、正規表現 を参照してください。
リテラルを使用する場合は、エスケープ文字の前処理を回避するために raw-literal (r プレフィックス) を使います。
str NOT regexp ... は NOT(str regexp ...) に相当します。
一般的なエラー状態
例
文字列がパターンと一致するかどうかをテストする
> SELECT 'Databricks SQL' regexp r'^Data';
true
> SELECT 'Spark SQL' regexp r'^Data';
false
文字列に数字が含まれているかどうかを確認する
> SELECT 'order12345' regexp r'\d';
true
大文字と小文字を区別せずに照合する
大文字と小文字を無視するには、 (?i) インライン フラグを使用します。
> SELECT 'HELLO WORLD' regexp r'(?i)hello';
true
で一致を否定する NOT
> SELECT 'no digits here' NOT regexp r'\d';
true
リテラル円記号に一致する
円記号は正規表現メタ文字であるため、リテラル円記号と \\を一致させます。 未加工リテラル (r プレフィックス) を使用すると、SQL エスケープ文字を 2 倍にする必要がなくなります。
> SELECT r'%SystemDrive%\Users\John' regexp r'%SystemDrive%\\Users.*';
true
> SELECT r'%SystemDrive%\Users\John' regexp '%SystemDrive%\\\\Users.*';
true