2012-03-21 30 views
1

我想同时搜索两个查询,例如“macbook pro”和“iphone”,并且要搜索的默认字段是“title”,所以查询是: (标题:macbook pro标题:iphone)。我想在每个查询中使用“和”操作,例如(+标题:macbook + title:pro)和查询之间的“或”操作,即,
((+ title:macbook + title:pro)(title:iphone))。然而,在使用QueryParser解析这个查询(标题:macbook pro title:iphone)后,结果将会是:(title:macbook title:pro title:iphone),如果我设置解析器的默认运算符是QueryParser.AND_OPERATOR,那么查询将是(+标题:macbook +标题:pro + title:iphone)。我也不需要。 ((+ title:macbook + title:pro)(title:iphone))Lucene:如何分配和/或搜索

+1

什么是问题 “((+标题:的MacBook +标题:PRO)(标题:iphone))”? – jpountz 2012-03-21 08:28:22

回答