我们希望在solr中将Term查询设置为不区分大小写,但它不起作用。
http://localhost:8983/solr/terms?terms.fl=name&terms.fl=places&terms.prefix=Delhi
如果我们传递像'德里'这样的字段,它不会返回任何结果,但是'德里'正在返回正确的结果。我们使用下面的索引和查询数据。
<fieldType name="string_ci" class="solr.TextField" sortMissingLast="true" omitNorms="true">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory"/>
<filter class="solr.LengthFilterFactory" min="2" max="100"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
答案 0 :(得分:0)
仔细检查name和places是否为string_ci类型。 你是否也可以在添加LowerCaseFilterFactory后忘记重新索引?
如果它没有帮助,你能告诉我们它是否正在使用常规查询吗?