NiFi:ReplaceTextWithMapping 处理器
NiFi: ReplaceTextWithMapping processor
我有以下插入语句:
insert into temp1 values (test1, test2)
insert into temp2 values (test3)
预期结果:
insert into temp1 values (100, 200)
insert into temp2 values (300)
本质上,我想分别用值 100
、200
替换第一个查询文字 test1
、test2
,第二个查询替换 test3
的值为 300
。有人可以帮助处理上述用例的映射文件吗?
我尝试了以下方法,但没有任何效果。
搜索值 (RegEx) 替换值
(1)(.*values.*)(.*test1)(.*,)(.*test2) -> val1 val2
(2)(.*values.*)(.*test1) -> 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)
我有以下插入语句:
insert into temp1 values (test1, test2)
insert into temp2 values (test3)
预期结果:
insert into temp1 values (100, 200)
insert into temp2 values (300)
本质上,我想分别用值 100
、200
替换第一个查询文字 test1
、test2
,第二个查询替换 test3
的值为 300
。有人可以帮助处理上述用例的映射文件吗?
我尝试了以下方法,但没有任何效果。
搜索值 (RegEx) 替换值
(1)(.*values.*)(.*test1)(.*,)(.*test2) -> val1 val2
(2)(.*values.*)(.*test1) -> 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)