我想要转换下面的diagnoses数组,并将sequence以外的所有字段移到嵌套的coding数组中.

JSON Input

{
  "diagnoses": [
    {
      "version": "20230607",
      "code": "A100",
      "display": "Diagnosis 1",
      "sequence": 1
    },
    {
      "version": "20230607",
      "code": "B100",
      "display": "Diagnosis 2",
      "sequence": 2
    }
  ]
}

Desired Output

{
  "diagnoses": [
    {
      "coding": [
        {
          "version": "20230607",
          "code": "A100",
          "display": "Diagnosis 1"
        }
      ],
      "sequence": 1
    },
    {
      "coding": [
        {
          "version": "20230607",
          "code": "B100",
          "display": "Diagnosis 2"
        }
      ],
      "sequence": 2
    }
  ]
}

我可以像预期的那样变换单个diagnoses个对象,但不能正确地转置array.以下是转换单个diagnoses对象的输入和规范的示例.

JSON Input (single object)

{
  "version": "20230607",
  "code": "A100",
  "display": "Diagnosis 1",
  "sequence": 1
}

Jolt Spec

[
  {
    "operation": "shift",
    "spec": {
      "sequence": "&",
      "*": "coding[0].&"
    }
  }
]

推荐答案

忽略您有两种不同类型的输入,编写您自己的Jolt规范.因为您将数组输入放在sequence键中,否则将它们放在根对象中.

[
  {
    "operation": "shift",
    "spec": {
      "diagnoses": {
        "*": {
          "*": "&2[&1].coding[0].&",
          "sequence": "&2[&1].&"
        }
      },
      "*": "coding[0].&",
      "sequence": "&"
    }
  }
]

Json相关问答推荐

JSON字符串处理注入引号

创建Json嵌套文件 struct

在Ruby的json中压缩单个字段

使用 jolt 变换展平嵌套 JSON - 非常复杂

go 语言中的 JSON 到 XML

VBA-JSON 嵌套集合解析为 Excel

无法在 json --data 中使用变量

如果值不存在,则将值插入 JSON 数组

使用 json_query 过滤嵌套列表中的元素

C# 合并 2 个几乎相同的 JSON 对象

N1QL 聚合查询 Couchbase

使用 @ResponseBody 自定义 HttpMessageConverter 来做 Json 事情

apple-app-site-association json 文件是否会在应用程序中更新?

字符串的 Gson 数组到 JsonArray

jquery用json数据填充下拉列表

使用 JSON.Net 的 C# 到 JSON 序列化

与classic 规范化表相比,postgres JSON 索引是否足够高效?

有什么方法可以判断您安装的 gulp 版本吗?

使用 JSON.NET 序列化/反序列化对象字典

将 Pandas 数据框转换为嵌套 JSON