Solr:搜索query substring的同义词

时间:2016-04-28 07:06:34

标签: solr synonym

我们想搜索查询字符串的同义词。 如果我有" pm,项目经理"在同义词文件中输入。如果我正在寻找" pm"我正在得到正确的结果或者"项目经理"。

但是当我在搜索" 项目经理操作"时,Solr没有给出正确的结果,包括" pm"的搜索结果。但是当我调试时,我可以看到它正在扩展"项目经理"到" pm"

以下是我的配置

<fieldType name="text_jobs_synonym" class="solr.TextField" positionIncrementGap="1" autoGeneratePhraseQueries="true">
  <analyzer type="index">
        <charFilter class="solr.HTMLStripCharFilterFactory"/>  
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
        <filter class="solr.ShingleFilterFactory" maxShingleSize="3" outputUnigrams="true" />
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />

    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>           
        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true" tokenizerFactory="solr.KeywordTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />

    </analyzer>
</fieldType>

这是mm值&#34; 2&lt; 90%&#34;。

1 个答案:

答案 0 :(得分:0)

如何处理多项同义词

使用edismax查询解析器处理用户查询migth帮助。

检查此link