【发布时间】:2012-02-12 01:11:55
【问题描述】:
这是我的(非常标准的)ngram 模式 --
<fieldType name="ngram" class="solr.TextField" positionIncrementGap="100" stored="false" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="15"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
现在 laptop_ngram:"g74sx-a" 返回 --
<arr name="laptop_ngram">
<str>ASUS G74SX-A1 17.3-Inch Gaming Laptop</str>
</arr>
但 laptop_ngram:"g74sx-a1" 什么也没找到。
顺便说一句,转义“-”没有任何区别。
有什么想法吗?
【问题讨论】:
-
有什么理由不使用相同的分析器集进行查询吗?
-
你的意思是添加 solr.NGramFilterFactory 到查询分析器?
-
是的(我需要输入 12 个字符......)
标签: search solr lucene full-text-search