Like JSON 路径中的表达式

Like expression in JSON Path

我有一个像这样的 JOSN

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

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

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

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

    "audio": 
    {
      "name" :"sound ++"
    }
    }
}

从这个 JSON 我想使用 JSONPATH[=13= 过滤掉所有书籍元素("book","book1","book2") ]

正如我在 JSONPATH 中了解到的,我们没有任何 "Like" 类型语法,但我们可以使用正则表达式来做到这一点。

我试过这个

$.Room[?(/^.*book.*$/i.test(@.Room))]

但是这个表达式return与JSON没什么关系。

任何人都可以帮我解决这个...

也许thislink会对您有所帮助。检查 table $..book[?(@.author =~ /.*Tolkien/i)]. 这个表达式带来所有作者姓名以托尔金结尾的书(不区分大小写) --> 为你的修改它