RouteText 2025.5.31.15

捆绑包

org.apache.nifi | nifi-standard-nar

描述

根据用户定义的一组规则路由文本数据。将传入 FlowFile 中的每行与用户定义属性指定的值进行比较。文本与这些用户定义属性进行比较的机制由“匹配策略”定义。然后根据这些规则路由数据,分别传送每行文本。

标签

Expression Language、Regular Expression、attributes、csv、delimited、detect、filter、find、logs、regex、regexp、routing、search、string、text

输入要求

REQUIRED

支持敏感的动态属性

false

属性

属性

描述

字符集

对传入文本进行编码的字符集

分组正则表达式

指定正则表达式来对每行进行求值,以确定该行应放在哪个组中。正则表达式必须至少有一个用于定义行组的捕获组。如果正则表达式中存在多个捕获组,则所有捕获组的值将串联在一起。除非两行对该组具有相同的值(或者两行都不匹配正则表达式),否则两行不会放在同一个 FlowFile 中。例如,要按第一列将 CSV 文件中的所有行组合在一起,我们可以将此值设置为“(.*?),.*”。具有相同的组但关系不同的两行永远不会归入同一个 FlowFile 中。

忽略大小写

如果为 true,则比较值时不考虑大小写。例如,与“HELLO”或“hello”进行匹配将产生相同的结果。如果“匹配策略”设置为“符合表达式”,则忽略此属性。

忽略前导/尾随空白

表示在计算行时是否应忽略行首和行末的空白。

匹配策略

指定如何根据用户定义属性评估每行传入文本。

路由策略

指定在根据“匹配策略”和用户定义属性评估传入文本行时,如何确定要使用哪种关系。

关系

名称

描述

original

当行成功路由到 1 个或多个关系后,原始输入文件将路由到此目标

unmatched

不满足所需用户定义规则的数据将路由到此关系

写入属性

名称

描述

RouteText.Route

FlowFile 路由到的关系的名称。

RouteText.Group

所有捕获组在“分组正则表达式”属性中获取的值。如果未设置此属性,或者不包含任何捕获组,则不会添加此属性。

用例

从 FlowFile 的内容中删除空白或空行。

从文件中一处特定文本行,例如包含特定单词或行长超过一定阈值的文本行。

语言: 中文