我正在尝试使用Apache Lucene对短语"Grand Prarie“(故意拼写错误)进行模糊匹配。我的部分问题是,~运算符仅对单个单词术语进行模糊匹配,并作为短语的近似匹配。
有没有办法用lucene对一个短语进行模糊匹配?
发布于 2010-04-07 14:37:18
Lucene 3.0具有支持模糊短语查询的ComplexPhraseQueryParser。这在contrib包中。
发布于 2013-06-03 02:25:53
通过谷歌发现了这一点,并感受到了解决方案,而不是我想要的。在我的例子中,解决方案是简单地对solr API重复搜索序列。例如,如果我正在寻找: title_t来包含“狗~”和“猫~”的匹配,我添加了一些手动代码来生成查询,如下所示:
((title_t:dog~) and (title_t:cat~))这可能就是上面查询的内容,但是链接似乎已经死了。
发布于 2010-04-07 09:03:06
没有对模糊短语的直接支持,但是您可以通过显式地enumerating the fuzzy terms然后将它们添加到MultiPhraseQuery来模拟它。结果查询将如下所示:
<MultiPhraseQuery: "grand (prarie prairie)">https://stackoverflow.com/questions/2589086
复制相似问题