# 正则表达式函数

本部分介绍以下正则表达式函数：

| 函数 | 描述 |
| --- | --- |
| [REGEX_EXTRACT](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/regular-expressions/regexp_extract.htm) | 查找字符串中正则表达式模式的第一个匹配项，并返回请求的捕获组编号 |
| [REGEXP_EXTRACT_ALL](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/regular-expressions/regexp_extract_all.htm) | 在输入字符串上匹配正则表达式。如果存在转义组，则返回转义组；如果不存在，则返回原始字符串。 |
| [REGEXP_LIKE](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/regular-expressions/regexp_like.htm) | 评估正则表达式模式，并确定它是否包含在字符串中。 |
| [REGEX_MATCH_POSITION](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/regular-expressions/regex_match_position.htm) | 在输入字符串上匹配正则表达式，并返回第一个匹配项的索引 |
| [REGEX_NAMED_GROUPS](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/regular-expressions/regex_named_groups.htm) | 在输入字符串上匹配正则表达式。返回包含字段名称和组名称的记录 |
| [REGEXP_REPLACE](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Lakehouse/TransformationFunctions/regular-expressions/regexp_replace.htm) | 评估正则表达式模式，并用替换内容替换找到的每个实例 |

## 正则表达式模式

执行正则表达式模式匹配时使用的正则表达式模式在下表中进行了描述：

| 表达式 | 联系方式 | 描述 |
| --- | --- | --- |
| 任意字符 | . | 匹配除换行符以外的任何单个字符。 |
| 零次或多次 | \* | 匹配前一个表达式零次或多次出现，进行所有可能的匹配。 |
| 一次或多次 | + | 匹配前一个表达式至少一次出现。 |
| 行首 | ^ | 将匹配字符串锚定到行首。 |
| 行尾 | $ | 将匹配字符串锚定到行尾。 |
| 单词开头 | &lt; | 仅当单词在此文本点开始时才匹配。 |
| 词尾 | &gt; | 仅当单词在此文本点结束时匹配。 |
| 换行符 | \n | 匹配平台无关的换行符。在替换表达式中，插入一个换行符。 |
| 位数 | \d | 匹配任意数字 [0-9]。 |
| 集合中的任意一个字符 | [] | 匹配 [] 中的任意一个字符。要指定字符范围，请列出由短划线 (-) 分隔的起始字符和结束字符，例如 [a-z]。 |
| 匹配不在 ^ 之后字符集中的任何字符。 | [^...] | 匹配不在 ^ 之后字符集中的任何字符。 |
| 或 | \| | 匹配 OR 符号 (\|) 之前或之后的表达式。主要在组内使用。例如，(sponge\|mud) bath 匹配“sponge bath”和“mud bath”。 |
| 标记的表达式 | {} | 匹配标记为包含表达式的文本。 |
| /C++ 标识符 | :i | 匹配表达式 ([a-zA-Z\_$][a-zA-Z0-9\_$]\*)。 |
| 带引号的字符串 | :q | 匹配表达式 (("[^"]*")\|('[^']*'))。 |
| 空格或制表符 | :b | 匹配空格或制表符。 |
| 匹配表达式 ([0-9]+)。 | :z | 整数 :z 匹配表达式 ([0-9]+)。 |