Solr4.6,搜索不区分大小写的配置

2022-06-30 20:40:39 浏览数 (2)

Solr4.6搜索有些字段搜索的时候不需要区分大小写。这个时候需要做简单的过滤,建索引和搜索的时候把输入都转换成小写即可。配置如下:

<span style="font-size: 18px;"><fieldType name="text_ngrm" class="solr.TextField"  positionIncrementGap="100">         <analyzer type="index" >                 <tokenizer class="solr.NGramTokenizerFactory" minGramSize="1" maxGramSize="20"/>                 <filter class="solr.LowerCaseFilterFactory"/>         </analyzer>         <analyzer type="query"  >     <tokenizer class="solr.WhitespaceTokenizerFactory"/>     <filter class="solr.LowerCaseFilterFactory"/>         </analyzer>     </fieldType></span>

配置中使用的过滤器工厂类LowerCaseFilterFactory的wiki定义如下:

solr.LowerCaseFilterFactory

Creates org.apache.lucene.analysis.LowerCaseFilter.

Lowercases the letters in each token. Leaves non-letter tokens alone.

Example: "I.B.M.", "Solr" ==> "i.b.m.", "solr".

意即,将每个token的字母小写化。不处理非字母的token。

0 人点赞