📣
TiDB Cloud Premium 开放公测中。为企业级工作负载提供无限扩展、即时弹性伸缩和高级安全保障。此页面由 AI 自动翻译,英文原文请见此处。

REGEXP_LIKE



REGEXP_LIKE 函数用于检查字符串是否匹配正则表达式。

语法

REGEXP_LIKE(<expr>, <pat[, match_type]>)

参数

参数描述
<expr>要进行匹配的字符串 expr
<pat>正则表达式
[match_type]可选。match_type 参数是一个字符串,用于指定如何执行匹配

match_type 可以包含以下任意一个或多个字符:

  • c:大小写敏感匹配。
  • i:大小写不敏感匹配。
  • m:多行模式。识别字符串中的行终止符。默认行为是仅在字符串表达式的开头和结尾匹配行终止符。
  • n:. 字符可以匹配行终止符。默认情况下,. 的匹配会在行尾停止。
  • u:仅 Unix 行结束符。当前暂不支持。

返回类型

BIGINT:如果字符串 expr 与模式 pat 指定的正则表达式匹配,则返回 1,否则返回 0。如果 expr 或 pat 为 NULL,则返回值为 NULL。

示例

SELECT REGEXP_LIKE('a', '^[a-d]'); +----------------------------+ | REGEXP_LIKE('a', '^[a-d]') | +----------------------------+ | 1 | +----------------------------+ SELECT REGEXP_LIKE('abc', 'ABC'); +---------------------------+ | REGEXP_LIKE('abc', 'ABC') | +---------------------------+ | 1 | +---------------------------+ SELECT REGEXP_LIKE('abc', 'ABC', 'c'); +--------------------------------+ | REGEXP_LIKE('abc', 'ABC', 'c') | +--------------------------------+ | 0 | +--------------------------------+ SELECT REGEXP_LIKE('new*\n*line', 'new\\*.\\*line'); +-------------------------------------------+ | REGEXP_LIKE('new* *line', 'new\*.\*line') | +-------------------------------------------+ | 0 | +-------------------------------------------+ SELECT REGEXP_LIKE('new*\n*line', 'new\\*.\\*line', 'n'); +------------------------------------------------+ | REGEXP_LIKE('new* *line', 'new\*.\*line', 'n') | +------------------------------------------------+ | 1 | +------------------------------------------------+

文档内容是否有帮助?