簡體   English   中英

使用 Jolt 轉換列表列表

[英]Transformation List of Lists with Jolt

我有一個這樣的 JSON:

{
  "item1": [
    "serv1",
    "serv2",
    "serv3"
  ],
  "item2": [
    {
      "obj": [
        "matriz1",
        "matriz2",
        "matriz3"
      ]
    },
    {
      "obj": [
        "matriz4",
        "matriz5",
        "matriz6"
      ]
    }
  ]
}

我需要獲得這個 output:

{
  "item1": [
    "serv1",
    "serv2",
    "serv3"
  ],
  "item2": [
    [
      "matriz1",
      "matriz2",
      "matriz3"
    ],
    [
      "matriz4",
      "matriz5",
      "matriz6"
    ]
  ]
}

我正在嘗試使用這個 JOLT 規范:

[
  {
    "operation": "shift",
    "spec": {
      "item1": "item1",
      "item2": {
        "*": {
          "obj": "item2"
        }
      }
    }
  }
]

但是 output 包含第一個數組的 3 個元素,然后是我想要的第二個數組。

{
  "item1": [
    "serv1",
    "serv2",
    "serv3"
  ],
  "item2": [
    "matriz1",
    "matriz2",
    "matriz3",
    [
      "matriz4",
      "matriz5",
      "matriz6"
    ]
  ]
}

獲得正確 output 的正確 JOLT 規范是什么?

您可以使用移位轉換規范,例如

[
  {
    "operation": "shift",
    "spec": {
      "item1": "&",
      "item2": {
        "*": {
          "obj": "&2[&1]"
        }
      }
    }
  }
]

不需要重復鍵名,而是通過使用&符號來使用替換。

  • &替換當前鍵名
  • &2替換"item2" ,因為需要 go 2 級才能獲取名稱
  • &2[&1]表示嵌套在鍵名"item2"中的obj列表的元素

網站http://jolt-demo.appspot.com/上的演示是:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM