使用Solr匹配单词与相似的单词?

时间:2010-06-04 22:55:22

标签: php search solr

我想用Solr在我的mysql数据库中搜索线程。

但我希望它不仅可以搜索主题词,还可以搜索相似的词语。

EG。如果主题标题是“狗待售”,并且如果用户搜索狗,则标题将在结果中。

并且如果用户搜索“mac os x”,则会出现单词“snow leopard”。

和链接应用程序认为的单词的能力是相关的,例如。房子和公寓。

这种逻辑是如何完成的?

我知道你可以使用solr在你创建/添加的字典文件中查找单词,所以solr会查找狗并查看相关的单词(例如狗)。

但你在哪里找到这样的字典?

我不知道这种实现。

请指出正确的方向。

感谢

2 个答案:

答案 0 :(得分:2)

我认为你必须自己构建这样一个字典,因为它是非常特定于应用程序的。 “House”和“Apartment”可能与您的应用程序类似,但在另一个应用程序中距离很远。

获得此词典后,您可以通过SynonymFilterFactory使用它。

当用户搜索“dog”时匹配“dog”由词干分析器管理,不需要任何字典。

答案 1 :(得分:1)

您可以使用synonym.txt文件并创建自己的字典。

另一种选择可能是模糊搜索。