JSON路径中的Like表达式

JSON路径中的Like表达式,json,jsonpath,jsonparser,json-patch,Json,Jsonpath,Jsonparser,Json Patch,我有一个乔森像这样的东西 { "Room" :{ "Book" : { "name" : "abc" }, "Book1": { "name" : "xyz" }, "Book3": { "name" : "abc123" }, "Tv" : { "name" : "zyc" }, "audio":

我有一个乔森像这样的东西

{
    "Room" :{
    "Book" : 
     {
        "name" : "abc"
     },

    "Book1": 
     {
       "name" : "xyz"
     },

    "Book3": 
    {
      "name" : "abc123"
    },

    "Tv" : 
    {
      "name" : "zyc"
    },

    "audio": 
    {
      "name" :"sound ++"
    }
    }
}
从这个JSON中,我想使用JSONPATH过滤掉所有book元素(“book”、“book1”、“book2”)

正如我在JSONPATH中所知道的,我们没有任何“Like”类型语法,但我们可以通过使用正则表达式来做到这一点

我试过这个

$.Room[?(/^.*book.*$/i.test(@.Room))]
但是这个表达式没有从JSON返回任何内容

有人能帮我解决这个问题吗

也许链接会对您有所帮助。检查一下桌子
$…book[?(@.author=~/.*Tolkien/i)]。
此表达式带来了所有作者名称以Tolkien结尾的书籍(不区分大小写)-->请为您修改它

可能链接对您有帮助。检查一下桌子
$…book[?(@.author=~/.*Tolkien/i)]。
此表达式带来所有作者名称以Tolkien结尾的书籍(不区分大小写)-->请为您修改它