Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xpath JSON路径表达式_Xpath_Jsonpath - Fatal编程技术网

Xpath JSON路径表达式

Xpath JSON路径表达式,xpath,jsonpath,Xpath,Jsonpath,我有以下JSON负载: { "inputs" : [{ "attributeX" : [{ "id1" : "value11", }, { "id1" : "value12", } ], "attributeY" : [{ "id" :

我有以下JSON负载:

{
    "inputs" : [{
            "attributeX" : [{
                    "id1" : "value11",
                }, {
                    "id1" : "value12",
                }
            ],
            "attributeY" : [{
                    "id" : "valueY1",
                    "attributeZ" : [{
                            "pathZ" : "/Path1/Path2[00163E038C2E1EE299C1C394370BCFA0]/Description",
                            "value" : "valueXYZ",
                        }
                    ],
                }
            ]
        }
    ]
}
我想编写一个JSON路径表达式,以便获得pathZ的值。但是,[]中的部分值是动态的。在下面的JSON路径表达式中是否有指定通配符的方法

$.inputs.[*].attributeY.[*].attributeZ[?(@.pathZ=='/Path1/Path2**<HOW_CAN_I_SPECIFY_A_WILDCARD_HERE>**/Description')].value
$.inputs.[*].attributeY.[*].attributeZ[?(@.pathZ=='/Path1/Path2****/Description')。值

您可以在JSON路径表达式中使用正则表达式来匹配PathZ值的开始和结束,而无需匹配中间值。这是表达式的外观:

$.inputs.[*].attributeY.[*].attributeZ[?(new RegExp('^/Path1/Path2.*/Description$').test(@.pathZ))].value
我在这里使用在线JSON查询工具对此进行了测试: