tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

正则式函数

PDF
聚焦模式
字号
最后更新时间: 2026-01-07 15:39:44
本文介绍正则式函数基本语法及示例。
日志服务支持如下正则式函数:
函数名称
语法
说明
regexp_extract_all(x, regular expression)
提取目标字符串中符合正则表达式的子串,并返回所有子串的合集。
regexp_extract_all(x, regular expression, n)
提取目标字符串中符合正则表达式的子串,并返回与目标捕获组匹配的子串合集。
regexp_extract(x, regular expression)
提取并返回目标字符串中符合正则表达式的第一个子串。
regexp_extract(x, regular expression, n)
提取目标字符串中符合正则表达式的子串,然后返回与目标捕获组匹配的第一个子串。
regexp_like(x, regular expression)
判断目标字符串是否符合正则表达式。
regexp_replace(x, regular expression)
删除目标字符串中符合正则表达式的子串,返回未被删除的子串。
regexp_replace(x, regular expression, replace string)
替换目标字符串中符合正则表达式的子串,返回被替换后的字符串。
regexp_split(x, regular expression)
使用正则表达式分割目标字符串,返回被分割后的子串合集。

regexp_extract_all 函数

regexp_extract_all 函数用于提取目标字符串中符合正则表达式的子串合集。

语法

提取目标字符串中符合正则表达式的子串,并返回所有子串的合集。
regexp_extract_all(x, regular expression)
提取目标字符串中符合正则表达式的子串,然后返回与目标捕获组匹配的子串合集。
regexp_extract_all(x, regular expression, n)

参数说明

参数
说明
x
参数值为 varchar 类型。
regular expression
包含捕获组的正则表达式。例如(\\d)(\\d)(\\d)表示三个捕获组 。
n
第 n 个捕获组。n 为从1开始的整数。

返回值类型

array 类型。

示例

提取 http_protocol 字段中所有的数字。
查询和分析语句
* | SELECT regexp_extract_all(http_protocol, '\\d+')
查询和分析结果
[1,1]

regexp_extract 函数

regexp_extract 函数用于提取目标字符串中符合正则表达式的第一个子串。

语法

提取并返回目标字符串中符合正则表达式的第一个子串。
regexp_extract(x, regular expression)
提取目标字符串中符合正则表达式的子串,然后返回与目标捕获组匹配的第一个子串。
regexp_extract(x, regular expression, n)

参数说明

参数
说明
x
参数值为 varchar 类型。
regular expression
包含捕获组的正则表达式。例如(\\d)(\\d)(\\d)表示三个捕获组 。
n
第 n 个捕获组。n 为从1开始的整数。

返回值类型

varchar 类型。

示例

示例1:提取 http_protocol 字段值中的第一个数字。

查询和分析语句
* | SELECT regexp_extract_all(http_protocol, '\\d+')
查询和分析结果
1

示例2:提取 request_uri 字段值中的文件部分,并统计各个文件的访问次数。

查询和分析语句
* | SELECT regexp_extract(request_uri, './(index.)', 1) AS file, count(*) AS count GROUP BY file
查询和分析结果

regexp_like 函数

regexp_like 函数用于判断目标字符串是否符合正则表达式。

语法

regexp_like(x, regular expression)

参数说明

参数
说明
x
参数值为 varchar 类型。
regular expression
正则表达式。

返回值类型

boolean 类型。

示例

判断 server_protocol 字段值中是否包含数字。
查询和分析语句
* | select regexp_like(server_protocol, '\\d+')
查询和分析结果
TRUE

regexp_replace 函数

regexp_replace 函数用于删除或替换目标字符串中符合正则表达式的子串。

语法

删除目标字符串中符合正则表达式的子串,返回未被删除的子串。
regexp_replace(x, regular expression)
替换目标字符串中符合正则表达式的子串,返回被替换后的字符串。
regexp_replace(x, regular expression, replace string)

参数说明

参数
说明
x
参数值为 varchar 类型。
regular expression
正则表达式。
replace string
用于替换的子串.

返回值类型

string 类型。

示例

删除 server_protocol 字段值中的版本号部分,并统计不同通信协议对应的请求数量。
查询和分析语句
* | select regexp_replace(server_protocol, '.\\d+') AS server_protocol, count(*) AS count GROUP BY server_protocol
查询和分析结果
server_protocol
count
HTTP
357

regexp_split 函数

regexp_split 函数用于分割目标字符串,返回被分割后的子串合集。

语法

regexp_split(x, regular expression)

参数说明

参数
说明
x
参数值为 varchar 类型。
regular expression
正则表达式。

返回值类型

array类型。

示例

使用正斜线(/)分割 server_protocol 字段的值。
查询和分析语句
* | select regexp_split(server_protocol, '/')
查询和分析结果
["HTTP","1.1"]


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈