# REGEXP_EXTRACT
返回与正则表达式匹配的子字符串。
此函数会在指定的字符串中查找符合正则表达式的内容, index 为空默认返回第一个匹配的子字符串,未匹配则返回空字符串。
# 语法
REGEXP_EXTRACT(str, pattern, [index])
- str:给定的字符串对象
- pattern:一个用于匹配字符串的正则表达式,正则表达式中的
\
需要连续输入2个,第一个\
表示转义。正则表达式的语法参考 (opens new window) - index:可选,匹配的子字符串索引, 1 表示返回第一个匹配的子字符串
# 示例
REGEXP_EXTRACT("abc123","[0-9]+")
提取数字,返回字符串123
,index
为空默认返回第一个匹配项REGEXP_EXTRACT("ab4c123","[0-9]",2)
提取第二个匹配的数字,返回字符串1
REGEXP_EXTRACT("12.34","\\d*(?=\.)")
提取小数部分的整数部分,返回字符串12
REGEXP_EXTRACT("我Cd123","[A-Z][a-z]")
提取字母,返回字符串Cd
REGEXP_EXTRACT("123小明AB","[\\u4e00-\\u9fa5]*")
提取人名,返回字符串小明
REGEXP_EXTRACT("13487598742","[0-9]{4}$")
提取手机号后四位,返回字符串8742
REGEXP_EXTRACT("210502198412020944","\\d{8}(?=\\d{4}$)")
提取身份证的出生年月,返回字符串19841202
REGEXP_EXTRACT("月亮在5月12日最亮","\\d{1,2}月\\d{1,2}日")
提取文本中的日期,返回字符串5月12日
REGEXP_EXTRACT("在https://www.baidu.com中下载","https?://.+?(com|cn|net).*?")
提取文本中的网址,返回字符串https://www.baidu.com
REGEXP_EXTRACT("我的邮箱是xxxx@qq.com","[\\w]+(\.[\\w]+)*@[\\w]+(\.[\\w]*)")
提取文本中的qq邮箱,返回字符串xxxx@qq.com
REGEXP_EXTRACT("ip地址是192.168.2.3","(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}")
提取文本中的ipv4地址,返回字符串192.168.2.3
0条评论
评论