javascript中表达式的Lucene搜索

javascript中表达式的Lucene搜索,javascript,search,lucene,full-text-search,Javascript,Search,Lucene,Full Text Search,在javascript中,我有一个列表 var list = [ {"message":"This is our first message."}, {"message":"This is our second message"}, {"message":"This is our third message"}, {"message":"This is our fourth message"}, ]; 我想像这样在列表中搜索 一些例子- first OR message second AND

在javascript中,我有一个列表

var list = [
{"message":"This is our first message."}, 
{"message":"This is our second message"},
{"message":"This is our third message"},
{"message":"This is our fourth message"},
];
我想像这样在列表中搜索

一些例子-

first OR message
second AND message
(first AND message) OR (second AND message)
our AND (first OR message)
(first AND message) OR ((second AND message) AND (third OR message))
等等

因此,对于每个搜索,它都应该返回一个列表,该列表只包含满足搜索的元素

对于ex:返回列表

(first AND message) OR (second AND message)

我想知道是否有任何现有的库,如lucene search等,可以在javascript或任何其他简单的方法中实现这一目的,而不是在方法/函数中使用数据结构(如树)编写整个代码并使用它

谢谢

{"message":"This is our first message."}, 
{"message":"This is our second message"}