我想用Solr在我的mysql数据库中搜索线程。
但我希望它不仅可以搜索主题词,还可以搜索相似的词语。
EG。如果主题标题是“狗待售”,并且如果用户搜索狗,则标题将在结果中。
并且如果用户搜索“mac os x”,则会出现单词“snow leopard”。
和链接应用程序认为的单词的能力是相关的,例如。房子和公寓。
这种逻辑是如何完成的?
我知道你可以使用solr在你创建/添加的字典文件中查找单词,所以solr会查找狗并查看相关的单词(例如狗)。
但你在哪里找到这样的字典?
我不知道这种实现。
请指出正确的方向。感谢
答案 0 :(得分:2)
我认为你必须自己构建这样一个字典,因为它是非常特定于应用程序的。 “House”和“Apartment”可能与您的应用程序类似,但在另一个应用程序中距离很远。
获得此词典后,您可以通过SynonymFilterFactory使用它。
当用户搜索“dog”时匹配“dog”由词干分析器管理,不需要任何字典。
答案 1 :(得分:1)
您可以使用synonym.txt文件并创建自己的字典。
另一种选择可能是模糊搜索。