ExtractText 2025.5.31.15

捆绑包

org.apache.nifi | nifi-standard-nar

描述

对照 FlowFile 的内容评估一个或多个正则表达式。 这些正则表达式的结果被分配给 FlowFile 属性。 通过添加用户定义的属性来输入正则表达式;属性的名称映射至结果写入的属性名称中。 属性的生成方式根据命名捕获组的启用情况而有所不同。 如果未启用命名捕获组: 如果存在捕获组,第一个捕获组的内容将被放入指定的属性名称中。同时,所有的捕获组(包括整个匹配到的字符串)也会以带索引的形式存储在该属性名称下,可选且未匹配的捕获组除外。例如,给定属性名称“regex”和表达式“abc(def)?(g)”,如果“def”匹配,我们将添加一个属性“regex.1”,其值为“def”。如果“def”不匹配,则不会添加任何名为“regex.1”的属性,但无论如何都会添加值为“g”且名为“regex.2”的属性。如果启用了命名捕获组: 找到的每个命名捕获组将使用提供的名称放入属性名称中。 如果启用,匹配的字符串序列本身将放入属性名称中。 如果启用了多重匹配,索引将在第一组匹配后应用。可选且未匹配的捕获组除外。例如,给定属性名称“regex”和表达式“abc(?<NAMED>def)?(?<NAMED-TWO>g)”,如果“def”匹配,我们将添加一个属性“regex.NAMED”,其值为“def”。 当“g”匹配成功时,无论其他条件如何,我们都将添加一个值为“g”的“regex.NAMED-TWO”属性。 该属性的值必须是具有一个或多个捕获组的有效正则表达式。如果启用了命名捕获组,则必须命名所有捕获组。 若未启用,则处理器配置将无法通过验证。 如果正则表达式匹配多次,除非将启用重复捕获组的属性设置为 True,否则将仅使用第一次匹配。如果提供的任何正则表达式匹配,则 FlowFile 将路由到“matched”。如果提供的正则表达式不匹配,则 FlowFile 将路由到“unmatched”,且不会对 FlowFile 应用任何属性。

标签

Regular Expression、Text、evaluate、extract、regex

输入要求

REQUIRED

支持敏感的动态属性

false

属性

属性

描述

字符集

对文件进行编码的字符集

启用规范等效性

表示只有当两个字符的完整规范分解匹配时,它们才匹配。

启用不区分大小写的匹配

表示两个字符即使大小写不同,也匹配。 也可以通过嵌入式标志 (?i) 指定。

启用 DOTALL 模式

表示表达式“.”应匹配任何字符,包括行终止符。 也可以通过嵌入式标志 (?s) 指定。

启用模式的字面量解析

表示不应赋予元字符和转义字符任何特殊含义。

启用多行模式

表示“^”和“$”应在行终止符或序列结尾之后和之前匹配,而不是仅匹配整个输入的开头或结尾。 也可以通过嵌入式标志 (?m) 指定。

启用 Unicode 预定义字符类

指定是否符合《Unicode 技术标准第 18 号:Unicode 正则表达式》附录 C:兼容性属性。 也可以通过嵌入式标志 (?U) 指定。

启用 Unicode 感知大小写折叠

与“启用不区分大小写的匹配”一起使用时,以符合 Unicode 标准的方式进行匹配。 也可以通过嵌入式标志 (?u) 指定。

启用 Unix 行模式

表示在“.”、“^”和“$”行为中只能识别 '' 行终止符。 也可以通过嵌入式标志 (?d) 指定。

启用命名组支持

如果设置为 True,则当命名组出现在正则表达式中时,该组的名称将用于属性名称,而不是组索引。 须命名所有捕获组,且若组数(不包括捕获组 0)不等于命名组的数量,则验证失败。

启用重复捕获组

如果设置为 True,则将提取与捕获组匹配的每个字符串。否则,如果正则表达式匹配多次,则仅提取第一次匹配。

括捕获组 0

表示应将“捕获组 0”作为属性包括在内。“捕获组 0”代表全部正则表达式匹配,通常不使用,且长度可能较长。

最大缓冲区大小

指定要缓冲的最大数据量(每个 FlowFile),以便应用正则表达式。大于指定最大值的 FlowFiles 将无法进行全面评估。

最大捕获组长度

指定给定捕获组值可以包含的最大字符数。任何超出最大值的字符都将被截断。

允许在模式中添加空格和注释

在此模式下,空格将被忽略,以 # 开头的嵌入式注释会被忽略,直到行尾。 也可以通过嵌入式标志 (?x) 指定。

关系

名称

描述

matched

成功评估正则表达式且 FlowFiles 因此被修改后,将 FlowFile 路由到此关系

unmatched

当提供的正则表达式不匹配 FlowFiles 的内容时,将 FlowFile 路由到此关系

语言: 中文