我有一个JSON数组,我通过http流获取。简化后,对象的结构如下:
{
"ID" : 1234,
"Item" : {
"ID" : "ABC123",
"name" : "a thing"
}
}
对象是一个数组,所以实际上我得到了:
[{"ID":1234,"Item":{"ID":"ABC123","name":"a thing"}},{"ID":5678,"Item"....]
我使用oboe.js在流到达时解析流并使用ID
执行其他操作,但我很难区分ID
对象中的Item.ID
。例如,此代码段将匹配ID
&#39>:
oboe(res).on("node", { "ID": function (id) {
console.log("found thing with ID of " + id);
}});
输出确认它抓住了ID
两个值而不是第一个,这就是我需要的:
found thing with ID of 1234
found thing with ID of a thing
我尝试使用以下模式,但没有成功:
ID
- 匹配!.ID
- 不匹配*.ID
- 匹配.ID
- 匹配ID.
- 匹配 tldnr:我正在努力找到一个正确的模式,说明"匹配一个名为ID
的节点离开流中对象的根,忽略该对象中的任何其他节点& #34;
答案 0 :(得分:2)
正如OP的问题的评论中所提到的:!*.ID
应匹配数组中的节点对象ID
属性。