- 文档首页
日志服务
用户指南
检索分析
SQL 函数
正则式函数
正则式函数
本文介绍日志服务支持的正则式函数语法及常见场景的使用示例。
说明
- 在日志服务分析语句(SQL 语句)中,需要使用单引号('')包裹代表字符串的字符,无符号包裹或被双引号("")包裹的字符为字段名或列名。例如'time' 代表字符串,time 或 "time" 代表字段名或列名。
- 正则表达式应被半角单引号包裹,否则可能导致分析结果不符合预期,例如 '\d+' 表示一个或多个数字。
REGEXP_EXTRACT_ALL 函数用于提取与指定正则表达式匹配的子字符串。
- 提取与指定正则表达式匹配的子字符串,并返回所有子字符串的合集。
REGEXP_EXTRACT_ALL(KEY, regular_expression)
- 提取与指定正则表达式匹配的子字符串,并返回与目标捕获组匹配的子字符串合集。
REGEXP_EXTRACT_ALL(KEY, regular_expression, n)
-
*| SELECT REGEXP_EXTRACT_ALL(url_test, '\d+')
-
- 提取 url_test 字段值中的 age 部分,然后统计带 age 的日志条数。
*| SELECT REGEXP_EXTRACT_ALL(url_test, '(age)',1) AS age, COUNT(*) AS count GROUP BY age
-
-
REGEXP_EXTRACT 函数用于提取与指定的正则表达式匹配的第一个子字符串。
REGEXP_EXTRACT(KEY, regular_expression)
- 提取与指定的正则表达式匹配的子字符串,然后返回与目标捕获组匹配的第一个子字符串。
REGEXP_EXTRACT(KEY, regular_expression, n)
-
*|SELECT REGEXP_EXTRACT(url_test, '\d+')
-
- 提取url_test字段值中的第一个age部分。
-
* | SELECT REGEXP_EXTRACT(url_test, '.*(age.*)&', 1) AS age, count(*) AS count GROUP BY age
-
- 提取url_test字段值中的冒号(:)和数字部分。
-
* | SELECT REGEXP_EXTRACT(url_test, ':\d+')
-
REGEXP_LIKE 函数用于判断字段值是否与指定的正则表达式匹配。
REGEXP_LIKE(KEY, regular_expression)
-
*| SELECT REGEXP_LIKE(url_test, '\d+')
-
REGEXP_REPLACE 函数用于删除或替换与指定正则表达式匹配的子字符串。
- 删除与指定正则表达式匹配的子字符串,并返回未被删除的子字符串。
REGEXP_REPLACE(KEY, regular_expression)
- 替换与指定正则表达式匹配的子字符串,并返回被替换后的子字符串。
REGEXP_REPLACE(KEY, regular_expression, replace_string)
-
*| SELECT REGEXP_REPLACE(Query, '\d+')
-
REGEXP_SPLIT 函数用于拆分目标字符串,返回拆分后的子字符串集合。
REGEXP_SPLIT(KEY, regular_expression)
-
*| SELECT REGEXP_SPLIT(Query, '_')
-
最近更新时间:2026.08.28 16:45:49