使用JSON Path

时间:2015-11-26 07:55:43

标签: javascript node.js xpath jsonpath

是否可以使用JSON Path找到与正则表达式模式(或至少以其开头)匹配的属性名称。在XPath中,我可以使用name(),但我找不到JSON Path等效内容。

基本上,我找到了以x-开头的所有属性名称。类似于$..x-*

我会对使用任何执行此操作的 javascript包感兴趣。目前,我正在使用JSONPath

2 个答案:

答案 0 :(得分:5)

从我的谷歌搜索中,这在标准json path中是不可能的。但是,JSONPath包扩展了@path的规范;并使以下可能

$..[?(@path.includes("[\'x-"))]

以上假设您使用的是ES6

答案 1 :(得分:3)

对其他人有用 您可以使用正则表达式使用=〜左匹配正则表达式。如需更多信息,请访问https://github.com/jayway/JsonPath

[?(@.name =~ /foo.*?/i)]