JSONPath 第一次出现 "gatherer"

JSONPath first occurrence of "gatherer"

我有一个这样的 json 文件:

{
  "cards": [
    {
      "artist": "Steve Argyle",
      "images": {
        "mtgimage": "http://mtgimage.com/set/pMPR/ponder.jpg"
      },
    },
    {
      "artist": "Mark Tedin",
      "images": {
        "gatherer": "http://gatherer.wizards.com/Handlers/Image.ashx?type=card&multiverseid=139512",
        "mtgimage": "http://mtgimage.com/set/LRW/ponder.jpg"
      },
    },
    {
      "artist": "Dan Scott",
      "images": {
        "gatherer": "http://gatherer.wizards.com/Handlers/Image.ashx?type=card&multiverseid=190159",
        "mtgimage": "http://mtgimage.com/set/M10/ponder.jpg"
      },
    }
  ]
}

我想使用 JSONPath 从中获取第一个 "gatherer" link。 我尝试了“$..gatherer[0]”,但这不起作用。但是“$..gatherer”确实给出了两个实例:

[
   "http:\/\/gatherer.wizards.com\/Handlers\/Image.ashx?type=card&multiverseid=139512",
   "http:\/\/gatherer.wizards.com\/Handlers\/Image.ashx?type=card&multiverseid=190159"
]

如何只获得第一个? (没有得到代码中的最后一个,所以只使用 json 路径字符串。)

(在我的程序中用 http://jsonpath.curiousconcept.com/ 测试过。)

您可能需要一个临时步骤来保存数组

var gatherers = $..gatherer;  //however this gets it, I'm not sure
var first = gatherers[0];

可能有用。