Str*_*nks 1 regex hortonworks-data-platform apache-nifi
尝试将标签添加到传入的 nifi json 流文件中。
输入:
[{"HIT":"DUMMY_3","BatchId":"jkajks981n-1280189nd-129dnbj-2349nbfk","Id":"81274376231"}]
Run Code Online (Sandbox Code Playgroud)
预期输出:
[{"nifi_received_ts_est":"2018-10-04 09:31:50.108","HIT":"DUMMY_3","BatchId":"jkajks981n-1280189nd-129dnbj-2349nbfk","Id":"81274376231"}]
Run Code Online (Sandbox Code Playgroud)
尝试了不同的方法,现在接近这个:
Search Value: ^([^\[]*)
Replacement Value: [{"nifi_received_ts_est":"${now():format("yyyy-MM-dd HH:mm:ss.SS")}"\,$2
Replacement Strategy: Regex Replace
Evaluation Mode: Entire Text
Run Code Online (Sandbox Code Playgroud)
但结果并不是预期的那样。下面:
[{"nifi_received_ts_est":"2018-10-04 09:31:50.108",$2[{"HIT":"DUMMY_3","BatchId":"jkajks981n-1280189nd-129dnbj-2349nbfk","Id":"81274376231"}]
Run Code Online (Sandbox Code Playgroud)
在正则表达式中从来都不好...:(有人可以帮助使用正确的短语来搜索和替换吗?另外,如果有人可以解释正则表达式以及如何进行分组,它也会有所帮助。也许是一个很好的备忘单参考。什么是好的测试和解析 nifi 特定正则表达式的站点?
解决方案:如果它可以帮助任何人找到该模式:搜索值:^(.*?)[{(将执行惰性搜索,直到找到第一个“[{”并将其之前的内容分组到 $1),因此替换将是:$1{"nifi_received_ts_est ":"${now():format("yyyy-MM-dd HH:mm:ss.SS")}",
| 归档时间: |
|
| 查看次数: |
2686 次 |
| 最近记录: |