正则表达式函数 - Amazon Timestream
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间,以实现实时分析。点击此处了解更多信息。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

正则表达式函数

Timestream 中的正则表达式函数 LiveAnalytics 支持 Java 模式语法。Timestream LiveAnalytics 支持以下正则表达式函数。

函数 输出数据类型 说明

regexp_extract_all(string, pattern)

array(varchar)

返回字符串中与正则表达式模式相匹配的子字符串。

SELECT regexp_extract_all('example expect complex', 'ex\w')

示例结果:[ exa,exp ]

regexp_extract_all(string, pattern, group)

array(varchar)

在字符串中查找所有符合正则表达式模式的匹配项,并返回 capturing group number 组。

SELECT regexp_extract_all('example expect complex', '(ex)(\w)', 2)

示例结果:[ a,p ]

regexp_extract(string, pattern)

varchar

返回字符串中与正则表达式模式相匹配的第一个子字符串。

SELECT regexp_extract('example expect', 'ex\w')

示例结果:exa

regexp_extract(string, pattern, group)

varchar

在字符串中查找第一个符合正则表达式模式的匹配项,并返回 capturing group number 组。

SELECT regexp_extract('example expect', '(ex)(\w)', 2)

示例结果:a

regexp_like(string, pattern)

布尔值

评估正则表达式模式,并判断其是否包含在字符串中。此函数类似于 LIKE 运算符,区别在于模式只需包含在字符串中,而不必匹配所有字符串。换言之,这执行的是包含操作而非匹配操作。您可以使用 ^ 和 $ 锚定模式来匹配整个字符串。

SELECT regexp_like('example', 'ex')

示例结果:true

regexp_replace(string, pattern)

varchar

从字符串中移除所有匹配正则表达式模式的子字符串实例。

SELECT regexp_replace('example expect', 'expect')

示例结果:example

regexp_replace(string, pattern, replacement)

varchar

将字符串中所有匹配正则表达式模式的子字符串实例替换为替换内容。捕获的分组可在替换时使用 $g 表示编号分组,或使用 ${name} 表示命名分组。如需在替换内容中包含美元符号($),可通过反斜杠(\$)进行转义。

SELECT regexp_replace('example expect', 'expect', 'surprise')

示例结果:example surprise

regexp_replace(string, pattern, function)

varchar

使用函数替换字符串中所有匹配正则表达式模式的子字符串实例。每次匹配都会调用 lambda expression 函数,并将捕获组作为数组传递。捕获组编号从 1 开始;整个匹配项没有组(如果需要,请用括号将整个表达式括起来)。

SELECT regexp_replace('example', '(\w)', x -> upper(x[1]))

示例结果:EXAMPLE

regexp_split(string, pattern)

array(varchar)

使用正则表达式模式拆分字符串,并返回数组。保留尾随的空字符串。

SELECT regexp_split('example', 'x')

示例结果:[ e,ample ]