使用JSONPath按条件筛选嵌套JSON:获取指定PIID的c_Internet对象
解决JSONPath筛选c_Internet子对象的问题
问题分析
原JSONPath语句失效的核心原因:
- 条件中的
@.PIID定位错误:PIID是c_Internet的子属性,而非DIA数组元素的直接属性 - 部分JSONPath引擎要求用
==作为相等判断符,原语句用=不符合语法规范
正确的JSONPath查询语句
方式一(精确路径)
$.OrderComponentInfo.members.ADD.DIA[?(@.c_Internet.PIID == "1234567")].c_Internet
方式二(通配符简化路径)
$..ADD.DIA[?(@.c_Internet.PIID == "1234567")].c_Internet
查询结果
执行上述语句后,会返回符合条件的c_Internet子对象:
{"PIID": "1234567","IPv6_Multiple_Path_Needed": ""}
内容的提问来源于stack exchange,提问作者Hanumantha
相关产品推荐
相关产品推荐

