在documentation中,我看到可以使用正则表达式在JSON中查找元素。
示例:
所有与正则表达式匹配的图书(忽略大小写)
$..book[?(@.author =~ /.*REES/i)]
但是如何用正则表达式查找根元素?
示例json:
{
"a_123":{...}
"b_123":{...}
}
让我们找到以a开头的元素:
JsonPath.read(str, "$.[?(@ =~ /a.*/i)]");
但是我可以找到这样的人
JsonPath.read(str, "a_123");
或者我可以使用正则表达式找到每个元素:
JsonPath.read(mapping, "$.[?(@ =~ /.*/i)]");