【发布时间】:2020-07-30 03:41:45
【问题描述】:
当我传入查询“state:OR”时,lucene 给出了一个错误,因为它认为“OR”是 布尔子句的关键字,但这里我实际上是俄勒冈州的缩写。
我已经看到引用 OR 使查询变为 'state:"OR"' 使其工作。
但这听起来不是一个很好的方法,因为我必须对 lucene 使用的每个关键字进行字符串替换:AND OR NOT 和其他?我不知道有多少
我尝试直接构造查询,而不是做queryParser.parse(),但似乎这并没有通过分析器,这是一个大问题。
【问题讨论】:
-
您可以在手动构建查询之前分析该术语