|
|
1
1
您自己建议的从令牌流构造布尔查询的方法完全有意义。QueryParser API实际上只用于使用特定语法分析结构化查询-如果您不使用查询分析器语法,我看不到在手动构造的布尔查询上使用QueryParser的任何原因。 但是,如果使用标准分析器(或另一个带有StopFilter的分析器)对字段进行索引,则“and”、“not”和“or”等单词将不会被索引,并且无法在上面搜索。因此,在这种情况下,您可以使用正则表达式轻松地从查询中删除“-”和“+”等单词和运算符。不过,我还是建议采用粗暴的方式。 |