【问题标题】:Case insensitive search solr in Term query术语查询中不区分大小写的搜索 solr
【发布时间】:2016-02-16 18:21:27
【问题描述】:

我们想让 solr 中的 Term 查询不区分大小写,但它不起作用。

http://localhost:8983/solr/terms?terms.fl=name&terms.fl=places&terms.prefix=Delhi

如果我们传递像 'Delhi' 这样的字段,它不会返回任何结果,但 '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>    

【问题讨论】:

    标签: solr


    【解决方案1】:

    再次检查姓名和地点是否属于 string_ci 类型。 会不会也是你添加LowerCaseFilterFactory后忘记重新索引的情况?

    如果没有帮助,您能告诉我们它是否适用于常规查询吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-02
      • 2019-03-15
      • 1970-01-01
      相关资源
      最近更新 更多