Regex NiFi:ReplaceTextWithMapping处理器
我有以下插入声明:Regex NiFi:ReplaceTextWithMapping处理器,regex,apache-nifi,Regex,Apache Nifi,我有以下插入声明: 插入temp1值(test1、test2) 插入temp2值(test3) 预期成果: 插入temp1值(100200) 插入temp2值(300) 基本上,我想用value100,200分别替换第一个查询文本test1,test2,第二个查询用value300替换test3。有人可以帮助处理上述用例的映射文件吗 我尝试了以下方法,但没有任何效果 搜索值(正则表达式)替换值 (1)(.*values.*)(.*test1)(.*,)(.*test2) -> $2 val
插入temp1值(test1、test2)
插入temp2值(test3)
插入temp1值(100200)
插入temp2值(300)
100
,200
分别替换第一个查询文本test1
,test2
,第二个查询用value300
替换test3
。有人可以帮助处理上述用例的映射文件吗
我尝试了以下方法,但没有任何效果
搜索值(正则表达式)替换值
(1)(.*values.*)(.*test1)(.*,)(.*test2) -> $2 val1 $4 val2
(2)(.*values.*)(.*test1) -> $2 val3
如果这就是您需要执行的映射范围,那么一个常规的
ReplaceText
处理器就足够了。使用以下设置可获得所需的输出:
它只检测test
的每个实例,后跟一个数字,并用该数字和00
替换它
如果需要使用ReplaceTextWithMapping
进行更复杂的查找,则映射文件的格式必须为:
search_value_1 replacement_value_1
search_value_2 replacement_value_2
etc.
搜索值和替换值之间的分隔符为\t
--------------------------------------------------
Standard FlowFile Attributes
Key: 'entryDate'
Value: 'Wed Dec 07 10:48:24 PST 2016'
Key: 'lineageStartDate'
Value: 'Wed Dec 07 10:48:24 PST 2016'
Key: 'fileSize'
Value: '66'
FlowFile Attribute Map Content
Key: 'filename'
Value: '56196144045589'
Key: 'path'
Value: './'
Key: 'uuid'
Value: 'f6b28eb0-73b5-4d94-86c2-b7a5d4cc991e'
--------------------------------------------------
insert into temp1 values (100, 200)
insert into temp2 values (300)
你不接受下面的答案有什么原因吗?