首页 新闻 会员 周边

通过jsonpath语法,如何获取不固定列表内的值?

0
悬赏园豆:30 [已解决问题] 解决于 2023-01-06 17:45

如下图所示,在data中,只有“测试1”和“测试2”这两个值是必然出现的, 但是出现的位置有可能不一样,可能“测试1”在前面,或“测试2”在前面,通过jsonpath语法如何获取圈出来的值?

{
"result":"执行成功",
"data":[
[
"测试1",
"100",
"200",
"300",
"1"
],
[
"测试2",
"110",
"120",
"130",
"0"
]
]
}

博无止境的主页 博无止境 | 初学一级 | 园豆:153
提问于:2022-04-07 22:38
< >
分享
最佳答案
0

JsonPath.read(json, "$.data[这里不确定顺序][1]")。如果位置可能交换除非你里面的数据也是一个key-value对象而不是数组。如果一定是数组,那就只能遍历了。个人理解

收获园豆:30
何吓吓 | 菜鸟二级 |园豆:241 | 2022-04-08 10:17

数组里面只有值,没有key,这是让我头疼的

博无止境 | 园豆:153 (初学一级) | 2022-04-08 10:22

@博无止境: 是啊,所以你只能遍历数组了,至少数组data[0]和data[1]里的其中一个数据是可分辩的吧?

何吓吓 | 园豆:241 (菜鸟二级) | 2022-04-08 17:29

@何吓吓: 我认为可以通过数组里面的“测试1”或“测试2”区别出来,但我不知道语法

博无止境 | 园豆:153 (初学一级) | 2022-04-08 17:36

@博无止境: 那不就得了,for()一遍data,if data[i][0]=="测试2",return data[i][1];

何吓吓 | 园豆:241 (菜鸟二级) | 2022-04-08 19:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册