You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Jolt Spec过滤JSON中指定folder值的对象?

Jolt筛选特定folder值的JSON对象解决方案

问题场景

有一组JSON数组数据,需要筛选出folder字段值为/folder-parent/raw/new、/folder-parent/raw/old、/folder-parent/changed-per-record的对象。

原始JSON数据

[
  {
    "field1": "xyz",
    "field2": "mno",
    "res1": "pqrs",
    "folder": "/folder-parent/raw/new"
  },
  {
    "field1": "xyz1",
    "field2": "mno1",
    "res1": "pqrs1",
    "folder": "/folder-parent/raw/old"
  },
  {
    "field1": "xyz1",
    "field2": "mno1",
    "res1": "pqrs1",
    "folder": "/folder-parent/changed-per-record"
  },
  {
    "field1": "xyz1",
    "field2": "mno1",
    "res1": "pqrs1",
    "folder": "/folder-parent/something-else"
  },
  {
    "field1": "xyz1",
    "field2": "mno1",
    "res1": "pqrs1",
    "folder": "/folder-parent/something/other-thing"
  }
]

错误的Jolt Spec

之前尝试的Spec存在逻辑、语法及拼写问题,无法生效:

[ { "operation": "shift", "spec": { "*": { "folder": { "*": { "filter": "@(2, folder)=== '/folder-parent/raw/new' && @(2, folder)=== '/folder-parent/raw/old' && @(2, folder)=== '/folder-parent/change-per-record'", "": "@" } } } } } ]

正确的Jolt Spec

使用shift操作配合正则匹配目标路径,实现精准筛选:

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "folder": {
          "/folder-parent/raw/new|/folder-parent/raw/old|/folder-parent/changed-per-record": {
            "@2": "[]"
          }
        }
      }
    }
  }
]

错误原因说明

  • 逻辑运算符错误:原Spec使用&&(逻辑与),但一个folder值不可能同时等于三个不同路径,应改为|(正则或)匹配任意一个目标路径。
  • 语法写法错误:Jolt的shift操作中,条件判断需通过匹配键值触发,而非直接写表达式;@2表示向上回溯两层,获取当前数组元素的完整对象。
  • 拼写错误:原Spec中把changed-per-record误写为change-per-record,导致匹配失败。

输出结果

执行正确的Jolt Spec后,输出筛选后的JSON数组:

[
  {
    "field1": "xyz",
    "field2": "mno",
    "res1": "pqrs",
    "folder": "/folder-parent/raw/new"
  },
  {
    "field1": "xyz1",
    "field2": "mno1",
    "res1": "pqrs1",
    "folder": "/folder-parent/raw/old"
  },
  {
    "field1": "xyz1",
    "field2": "mno1",
    "res1": "pqrs1",
    "folder": "/folder-parent/changed-per-record"
  }
]

内容的提问来源于stack exchange,提问作者Dot Net Dev 19

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 22:28:25