当前位置: 首页 > 知识库问答 >
问题:

Jsonpath:当sibiling元素是一个包含特定值的数组时,根据其兄弟元素获取元素的值

马淳
2023-03-14

使用以下json:

{
  "elements": [
    {
      "ids": [
        {
          "id": "A"
        },
        {
          "id": "B"
        }
      ],
      "value": "one"
    },
    {
      "ids": [
        {
          "id": "C"
        },
        {
          "id": "D"
        }
      ],
      "value": "two"
    }
  ]
}

请求id A时,返回值1的jsonpath是什么?

根据https://stackoverflow.com/a/47576707我可以检索包含以下内容的ids元素:

$... id[?(@. id=='A')]or$... id[?(@. id=='A')]

与结果:

[
   {
      "id" : "A"
   }
]

但是我想访问它的兄弟姐妹的值("value":"one")。

提前谢谢!

共有2个答案

詹高畅
2023-03-14

JsonPath:

$。元素[?(@.ids.*.id包含'A')]。值

结果:

[
   "one"
]
阎知
2023-03-14

您还可以在过滤器操作符中使用

$.elements[?('A' in @.ids.*.id)].value

 类似资料:
  • 我试图找到正确的xpath表达式来选择包含特定文本的元素的父元素。 在下面的示例中,我希望选择文本匹配为“4”或任何其他数字的“span”元素,并且父元素与文本“Rooms”匹配: 我的XPath示例-匹配“div”元素中的每个“span” 源代码 我想要的是选择包含数字4的“span”元素作为文本,但html可能会更改,可能只有两个或一个“span”元素,如下例所示: 或

  • 本文向大家介绍JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法,包括了JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法的使用技巧和注意事项,需要的朋友参考一下 最近工作中总遇到取各种父啊子啊兄弟姐妹啊,每次都得查,这次整理个全乎的~ 先给大家上干货: 【js的获取方式】 【jQuery的获取方式】

  • 我试图从以下JSON文本中设置作者值,但我的代码正在删除json文本的所有其他子级。 我尝试将第一本书中的作者更新为以下其他值。 设置步骤后,我的json只有书[1]的内容,如下所示。请告知如何才能获得我用替换值作为输出给出的整个json输入。 问候,萨蒂什。

  • 我有这个ArrayList- ,一个整数被添加到移动[1]。然后将该数组添加到ArrayList中,然后重复该过程,这样我就有了一个“移动”列表。 我的问题是,我不确定如何在ArrayList(“树”)中找到仅在元素中包含特定值的数组(“移动”)——因为元素每次都是唯一的。 然后,我想制作一个所有匹配项的数组/列表。例如,一个数组,它包含与3的值相匹配的所有移动值。因此,我会留下一个数组/2D数组

  • 本文向大家介绍php获取数组元素中头一个数组元素值的实现方法,包括了php获取数组元素中头一个数组元素值的实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php获取数组元素中头一个数组元素值的实现方法。分享给大家供大家参考。具体如下: 在php的内置函数中,获取数组元素值的函数主要有 reset next current prev end 这几个函数. reset (PHP 3,

  • 问题内容: 我有一个数组: 我想获得此数组的第一个元素。预期结果: 字符串 一个要求: 它不能通过引用传递来完成 ,所以不是一个好的解决方案。 我怎样才能做到这一点? 问题答案: 原始答案,但代价昂贵(O(n)): 在O(1)中: 其他用例等 如果修改(就重置数组指针而言)不是问题,则可以使用: 如果需要数组“副本”,则从理论上讲应该更有效: 使用PHP 5.4+(但如果为空,则可能导致索引错误)