使用 JMES 路径提取存储的值

Extract the value stored using JMES path

我需要提取存储在“$”中的值 由于中间有几个特殊字符,我无法这样做。有人可以为此分享 JMES 路径吗?以下是 JSON 代码供您参考。

{
  "Body": {
      "{data:com.test/ee}Submit_Response": {
          "@{data:com.test/ee}ver": "v00.6",
          "{data:com.test/ee}ID_Reference": {
              "@{data:com.test/ee}Description": "(Inactive)",
              "{data:com.test/ee}ID": [{
                      "@{data:com.test/ee}type": "Test",
                      "$": "1c02asdasdasd02"
                  },
                  {
                      "@{data:com.test/ee}type": "ID",
                      "$": "T-15645"
                  }
              ]
          }
      }
  }
}

问题中更新后的 json 非常复杂,但您可以通过多种方式达到目标,none 其中直观...

简洁版本:

*.*[][].*[].*[][].["$"][]
*.*.*.*[][][][]["$"][]

如果你想更直白一点,可以试试:

Body.*[][].*[].*[][].["$"][]
Body.*.*.*[][][][]["$"][]
Body.*.["{data:com.test/ee}ID_Reference"][]["{data:com.test/ee}ID"][][]["$"][]

全部输出:

[
  "1c02asdasdasd02",
  "T-15645"
]