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

从2025年6月20日起,亚马逊Timestream版 LiveAnalytics 将不再向新客户开放。如果您想使用亚马逊 Timestream LiveAnalytics,请在该日期之前注册。现有客户可以继续照常使用该服务。有关更多信息,请参阅 Amazon Timestream 以了解 LiveAnalytics 可用性变更。

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

正则表达式函数

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

函数 输出数据类型 描述

regexp_extract_all(字符串、模式)

array(varchar)

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

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

结果示例:[ exa,exp ]

regexp_extract_all(字符串、模式、组)

array(varchar)

在字符串中查找所有出现的正则表达式模式并返回捕获组号组

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

结果示例:[ a,p ]

regexp_extract(字符串、模式)

varchar

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

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

结果示例:exa

regexp_extract(字符串、模式、组)

varchar

查找字符串中第一次出现的正则表达式模式并返回捕获组号组。

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

结果示例:a

regexp_like(字符串、模式)

布尔值

评估正则表达式模式并确定它是否包含在字符串中。此函数与 LIKE 运算符类似,不同之处在于模式只需要包含在字符串中,而不必匹配所有字符串。换句话说,它执行的是包含操作而不是匹配操作。您可以通过使用 ^ 和 $ 锚定模式来匹配整个字符串。

SELECT regexp_like('example', 'ex')

结果示例:true

regexp_replace(字符串、模式)

varchar

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

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

结果示例:example

regexp_replace(字符串、模式、替换)

varchar

用替换替换字符串中与正则表达式模式匹配的子字符串的每个实例。可以在替换中引用捕获组,使用 $g 表示带编号的组,使用 $ {name} 表示命名的组。如果用反斜杠 (\ $) 转义美元符号 ($),则可以在替换项中包含美元符号 ($)。

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

结果示例:example surprise

regexp_replace(字符串、模式、函数)

varchar

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

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

结果示例:EXAMPLE

regexp_split(字符串、模式)

array(varchar)

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

SELECT regexp_split('example', 'x')

结果示例:[ e,ample ]