REGEXP_EXTRACT

regexp_extract(str, regexp [, idx])

功能描述

REGEXP_EXTRACT 函数利用指定的正则表达式(regexp)从输入字符串(str)中提取匹配的文本。该函数使用 re2 正则表达式引擎进行匹配。

参数说明

  • str (string):待匹配的输入字符串。
  • regexp (string):用于匹配的正则表达式字符串。
  • idx (int, 可选):要抽取的分组(group)索引。索引从 1 开始,默认值为 1,表示提取第一个分组。若指定值为 0,则表示匹配整个正则表达式。

返回值

返回一个字符串(string),包含匹配的文本。

使用示例

SELECT regexp_extract('价格为:100-500元', r'(\d+)-(\d+)', 1); -- 结果:'100'

SELECT regexp_extract('abc123def', r'(.*)\d', 1); -- 结果:'abc12'

SELECT regexp_extract('(这里是示例)', r'((.*))', 1); -- 结果:'这里是示例'

SELECT regexp_extract('纽约-美国', r'(.*)-(.*)', 2); -- 结果:'美国'

SELECT regexp_extract('需要匹配的文本', r'(.*)$', 0); -- 结果:'需要匹配的文本'

联系我们
预约咨询
微信咨询
电话咨询
邮件咨询