rlike 运算符

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime 10.0

如果 strregex 匹配,则返回 true。

语法

str [NOT] rlike regex

参数

  • str STRING:要匹配的排序规则中的UTF8_BINARY表达式。
  • regex:具有匹配模式的 STRING 表达式。

返回

一个 BOOLEAN

字符串 regex 必须是正则表达式。 有关支持的语法,请参阅 正则表达式 。 使用文本时,请使用raw-literalr 前缀)来避免转义字符预处理。

rlike是运算符的regexp同义词。

str NOT rlike ... 等效于 NOT(str rlike ...)

常见错误条件

示例

测试字符串是否与模式匹配

> SELECT 'Databricks SQL' rlike r'^Data';
 true

> SELECT 'Spark SQL' rlike r'^Data';
 false

验证简单的电子邮件格式

> SELECT 'alice@example.com' rlike r'^\w+@\w+\.\w+$';
 true

> SELECT 'not-an-email' rlike r'^\w+@\w+\.\w+$';
 false

不区分大小写

> SELECT 'HELLO WORLD' rlike r'(?i)hello';
 true

用 否定匹配项 NOT

> SELECT 'no digits here' NOT rlike r'\d';
 true

匹配文本反斜杠

反斜杠是正则表达式元字符,因此与文本反斜杠匹配 \\。 原始文本(r 前缀)避免还必须将 SQL 转义字符加倍。

> SELECT r'%SystemDrive%\Users\John' rlike r'%SystemDrive%\\Users.*';
 true

> SELECT r'%SystemDrive%\Users\John' rlike '%SystemDrive%\\\\Users.*';
 true