【问题标题】:Filter JSON via SplitJson and MergeContent通过 SplitJson 和 MergeContent 过滤 JSON
【发布时间】:2019-07-29 06:09:41
【问题描述】:

我正在 nifi 中构建流程,并且在流程中我需要按字段过滤 JSON。所以我决定拆分 json 然后通过 SplitJson 和 MergeContent 处理器合并过滤的部分。我的 splitJson proccesor JsonPath 是 $.items[?(@.name =~ /.*Test.*/i)] 所以它拆分正确但是当我想将所有部分合并到一个 json 文件 (Merge Strategy = Defragment) 并且它合并文件但方式不正确时。例如:

输入

{ "items": [  { "name": "A" }, { "name": "B" }, { "name": "Test" }, { "name": "Test" } ] }

所以我对 MergeContent Processor 的期望是:

[ {"name":"Test"}, {"name":"Test"} ]

但我得到了

{"name":"Test"}{"name":"Test"}

所以这甚至不是 json

理想的变体是以某种方式合并:

{ "items":[
{"name": "Test"},
{"name": "Test"}
]}

如何像这样合并?

【问题讨论】:

    标签: apache-nifi


    【解决方案1】:

    如下所述配置MergeContent Processor

    • 分隔符策略为 Text

    • 标题为 [

    • 页脚为 ]

    • 分界符为,

    现在您来自 MergeContent 处理器的 输出流文件 将结果为

    [ {"name":"Test"}, {"name":"Test"} ]
    

    【讨论】:

      猜你喜欢
      • 2021-03-12
      • 1970-01-01
      • 2022-01-22
      • 2015-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-02
      • 1970-01-01
      相关资源
      最近更新 更多