我在我的网站中使用 Solr 作为搜索引擎,除了同义词匹配外,一切都很顺利。
我的 synonym.txt 文件如下所示:
uk => united kingdom,england,scotland,wales
这适用于返回标有“英国”的结果,但不适用于其他结果。如果我颠倒排序,则不会返回“英国”结果。
我的字段类型如下所示:
<fieldType name="text" class="solr.TextField" omitNorms="false">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SynonymFilterFactory" tokenizerFactory="solr.KeywordTokenizerFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false"/>
</analyzer>
</fieldType>
我对 solr 很陌生,所以非常感谢任何帮助!