如果我具有以下JSON,我想知道是否可以返回值“ John”,前提是使用以下过滤器表达式$ [?(@。firstName =“ John”)]来匹配所需的对象
{
"firstName": "John",
"lastName" : "doe",
"age" : 26,
"address" : {
"streetAddress": "naist street",
"city" : "Nara",
"postalCode" : "630-0192"
},
"phoneNumbers": [
{
"type" : "iPhone",
"number": "0123-4567-8888"
},
{
"type" : "home",
"number": "0123-4567-8910"
}
]
}
换句话说,使用jsonpath表达式可以同时具有条件过滤器并从匹配的json对象返回属性值。我尝试使用https://jsonpath.com/上的JSONPath在线评估器未能成功创建这样的表达式。
答案 0 :(得分:0)
您可以使用$.[?(@.firstName == 'John')].firstName
。请记住,不要使用https://jsonpath.com/来评估您的JSON路径。改为使用http://jsonpath.herokuapp.com/ ..
祝你好运。