我尝试过很多方法,在不同的网站上搜索过,但是我没有得到任何答案。
我需要同样的结果,书桌和台式机,我已经写成台式机,书桌书=>台式机。
但是我在一页上得到台式机的结果,在另一页上得到书的结果。这要归功于Lucene解析器。我从这链接上得到了这个信息。
发布于 2012-11-20 07:42:42
如果您有多个单词同义词,请检查是否遵循以下内容:-
请记住,虽然SynonymFilter会很高兴地使用包含多个单词的同义词(例如:"sea biscit、sea biscit、seabiscuit"),但建议的处理此类同义词的方法是在索引时扩展同义词。
所以你只在索引时间分析的时候有它。
例如:
在索引和查询时间分析中使用相同的筛选链,因此搜索的项与索引项匹配。
例如:
<fieldType name="text_synonym" class="solr.TextField">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="syms.txt" ignoreCase="true" expand="true"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
https://stackoverflow.com/questions/13467632
复制相似问题