Documentation

正则表达式

正则表达式是用于识别标识符和字符串值中模式的字符序列。 InfluxQL 在以下操作中支持正则表达式

查询性能

正则表达式比较比精确字符串比较计算量更大。 使用正则表达式的查询不如不使用正则表达式的查询性能好。

正则表达式语法

InfluxQL 正则表达式用 / 字符包围,并使用 Go 正则表达式语法

/regular_expression/

正则表达式标志

正则表达式标志修改表达式的模式匹配行为。 InfluxQL 支持以下正则表达式标志

标志描述
i不区分大小写
m多行模式:^$ 除了匹配文本的开头/结尾外,还匹配行的开头/结尾
s. 匹配 \n
U非贪婪:交换 x*x*?x+x+? 等的含义。

将正则表达式标志包含在正则表达式模式的开头,用括号 (()) 括起来,并在前面加上问号 (?)。

/(?iU)foo*/

正则表达式运算符

InfluxQL 提供了以下正则表达式运算符,用于测试字符串操作数是否与正则表达式匹配

  • =~:如果字符串与正则表达式匹配,则返回 true
  • !~:如果字符串与正则表达式不匹配,则返回 true

InfluxQL 正则表达式运算符用于测试 WHERE 子句中的字符串列值。

正则表达式示例

以下示例使用以下示例数据集

使用正则表达式在 SELECT 子句中指定字段键和 tag 键

使用正则表达式在 FROM 子句中指定 measurement

使用正则表达式在 WHERE 子句中指定 tag 值

使用正则表达式在 WHERE 子句中指定没有值的 tag

使用正则表达式在 GROUP BY 子句中指定 tag 键


此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。 您可以继续像现在一样使用它,而无需对您的代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。 更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速、最近数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。 InfluxDB 3 Enterprise 基于 Core 的基础构建,增加了高可用性、读取副本、增强的安全性以及数据压缩,以实现更快的查询和优化的存储。 InfluxDB 3 Enterprise 的免费层可供非商业家庭或业余爱好者使用。

有关更多信息,请查看