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

如何通过JOLT操作根据指定键过滤JSON并提取对应值?

JOLT实现按指定字段提取值

输入JSON

{
  "input": {
    "a": "valueA",
    "b": "valueB",
    "c": "valueC"
  },
  "fieldsToFilterBy": [
    "a",
    "c"
  ]
}

期望输出JSON

{
  "input": {
    "a": "valueA",
    "b": "valueB",
    "c": "valueC"
  },
  "filteredValues": [
    "valueA",
    "valueC"
  ]
}

JOLT转换规则

可以通过以下JOLT规格实现需求:

[
  {
    "operation": "shift",
    "spec": {
      "input": "input",
      "fieldsToFilterBy": {
        "*": {
          "@(2,input.&)": "filteredValues[]"
        }
      }
    }
  }
]

规则说明

  • shift操作用于重新组织JSON结构
  • "input": "input"直接保留原有的input对象,不做修改
  • "fieldsToFilterBy"下的"*"表示遍历数组中的每一个元素
  • @(2,input.&)是JOLT路径引用:
    • 2表示向上回溯2层,回到根节点层级
    • &代表当前遍历到的数组元素(即a、c),最终取input.a和input.c的值
    • "filteredValues[]"将这些值依次存入目标数组

内容的提问来源于stack exchange,提问作者poezii siflori

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 22:24:51