使用Ngram防止在SOLR中阻止单词

时间:2015-09-16 11:40:02

标签: solr4 sunspot-rails sunspot-solr

我的查询是pension paid united nation,我希望阻止联合词来阻止。所以我在文本字段上使用KeywordMarkerFilterFactory并且它正常工作。

但我还配置了ngram字段&我的架构是:

<fieldType name="text_ngram" class="solr.TextField" omitNorms="false">
  <analyzer>
    <tokenizer class="solr.StandardTokenizerFactory" />
    <filter class="solr.StandardFilterFactory" />
    <filter class="solr.LowerCaseFilterFactory" />
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true" />
    <filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="15" side="front" />
  </analyzer>
</fieldType> 

在我的fq参数中,文本字段和ngram字段都在进行,所以当我调试一个查询时,它将统一的单词改为uni unit unit unite united。这是因为ngram,但我不想打破团结,它应该只在ngarm中团结起来。怎么做到这一点? IS KeywordMarkerFilterFactory是否与Edgengram合作?

0 个答案:

没有答案