【发布时间】:2013-06-08 13:07:41
【问题描述】:
下面是我的字段类型,我想在搜索过程中保留空白
<fieldType name="searchterm" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.NGramFilterFactory" minGramSize="3" maxGramSize="250" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.LowerCaseFilterFactory" />
</analyzer>
</fieldType>
例如:input = "alpha beta" 并且我搜索 "alpha" ,"beta" 将匹配,但我如何强制不匹配搜索词,如 "alpha eta"(不应该匹配) .我也应该匹配 "eta","pha" 但不匹配 "alpha eta"
【问题讨论】:
-
“alpha eta”真的匹配吗?
-
也许是带状过滤器?
-shingled_text_field:alpha eta -
@FridayChils: 是的,上面的 FilterType alpha eta 匹配 alpha
-
什么是-shingled_text_field?
标签: solr