0

我正在使用基于 Lucene 的搜索引擎。

例如,我有一个像“name”这样的字段:“blue sky”

我可以使用蓝色或天空进行搜索,但不能使用蓝色。我认为蓝光是蓝色的一部分,为什么我不能搜索蓝光?

4

2 回答 2

1

您需要使用通配符 ( blu*) 或模糊搜索 ( blu~)。更多信息可在此处获得。

于 2013-02-06T15:15:06.543 回答
1

或者,您可以定义一个特殊的映射来满足该需求。例如,在 elasticsearch 中,您可以为字段定义一个edgeNgram分析器。

WildcardQueries 搜索比 termQueries 慢。您也可以使用PrefixQuery

于 2013-02-06T15:35:42.500 回答