Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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
解决这个简单的(?)JSONPath_Json_Jsonpath_Openhab_Json Path Expression - Fatal编程技术网

解决这个简单的(?)JSONPath

解决这个简单的(?)JSONPath,json,jsonpath,openhab,json-path-expression,Json,Jsonpath,Openhab,Json Path Expression,我不熟悉这个话题,但我希望你能帮助我。我想不出一个正确的JSON表达式来解决我的问题 给定JSON结构(来自zigbee2mqtt): 我正在尝试的是: 如果$.type=='device\u announced',则返回友好的\u名称 在这种情况下是什么 Lamp1 如果我理解正确,您正在寻找这样的表达式: $[?(@.type=='device_announced')].meta.friendly_name 因此,我们在types上筛选与搜索字符串相等的根集合,然后向下搜索到友好的\u名称

我不熟悉这个话题,但我希望你能帮助我。我想不出一个正确的JSON表达式来解决我的问题

给定JSON结构(来自zigbee2mqtt):

我正在尝试的是:

如果$.type=='device\u announced',则返回友好的\u名称

在这种情况下是什么

Lamp1


如果我理解正确,您正在寻找这样的表达式:

$[?(@.type=='device_announced')].meta.friendly_name
因此,我们在
type
s上筛选与搜索字符串相等的根集合,然后向下搜索到友好的\u名称。你可以在线测试


注意:有些实现要求您将JSON封装在一个数组中
[]
,以允许这种过滤。

您尝试了什么路径?
$[?(@.type=='device_announced')].meta.friendly_name