【问题标题】:Case sensitive and case insenistive search in solrsolr 中区分大小写和不区分大小写的搜索
【发布时间】:2014-04-11 18:20:29
【问题描述】:

我使用以下字段类型配置在 solr 中索引数据。我只能在上面表演 不区分大小写的搜索。例如:如果我输入文本:Abcabc 给出相同的结果。

 <fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
  <analyzer type="index">
    <tokenizer class="solr.ClassicTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
    <filter class="solr.StandardFilterFactory"/>
    <!-- in this example, we will only use synonyms at query time
    <filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
    -->
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
  <analyzer type="query">
    <tokenizer class="solr.ClassicTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
</fieldType>

但是现在我的要求发生了变化。假设如果我正在搜索 Abc,那么它应该给出与 Abc 而不是 abc 匹配的所有结果,reverse 也应该工作。

当前配置是否可行?如果不是,那么我应该使用什么配置。 请给我建议。

【问题讨论】:

    标签: solr


    【解决方案1】:

    只需从标记器中删除小写过滤器,它应该可以解决您的问题。然后它不会将标记转换为小写,从而为您提供所需的结果。

    【讨论】:

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