如何在solr查询中忽略大小写敏感度

如何在solr查询中忽略大小写敏感度,solr,case-insensitive,solr-query-syntax,Solr,Case Insensitive,Solr Query Syntax,我有一个由名字和位置组成的数据库。我正在使用SOLR搜索不区分大小写的名称。然而,我无法找到任何方法,我可以做到这一点。 例如: 我有一份名单: 拉吉耶夫 拉杰夫 拉吉 拉吉 当我搜索cname:raj*时,我得到以下信息 拉杰夫 拉吉 如何才能同时获得Rajeev和Raj。您应该添加一个新的过滤器solr.LowerCaseFilterFactory以将所有内容转换为小写,这应该应用于索引和查询 分析器是在索引时预处理输入文本的组件 和/或在搜索时。使用相同或相似的方法很重要 在索引和查询时以

我有一个由名字和位置组成的数据库。我正在使用SOLR搜索不区分大小写的名称。然而,我无法找到任何方法,我可以做到这一点。 例如: 我有一份名单:

拉吉耶夫 拉杰夫 拉吉 拉吉

当我搜索cname:raj*时,我得到以下信息 拉杰夫 拉吉


如何才能同时获得Rajeev和Raj。

您应该添加一个新的过滤器solr.LowerCaseFilterFactory以将所有内容转换为小写,这应该应用于索引和查询

分析器是在索引时预处理输入文本的组件 和/或在搜索时。使用相同或相似的方法很重要 在索引和查询时以兼容方式处理文本的分析器 时间例如,如果索引分析器将单词小写,则 查询分析器也应该这样做,以便能够查找索引词

例如: Schema.xml

其中文本为常规类型


您应该添加一个新的过滤器solr.LowerCaseFilterFactory以将所有内容转换为小写,这应适用于索引和查询

分析器是在索引时预处理输入文本的组件 和/或在搜索时。使用相同或相似的方法很重要 在索引和查询时以兼容方式处理文本的分析器 时间例如,如果索引分析器将单词小写,则 查询分析器也应该这样做,以便能够查找索引词

例如: Schema.xml

其中文本为常规类型


我的所有字段都是字符串类型。方法是否也适用于字符串类型???@RajeevRajvaidya您应该将类型字符串更改为其他类型。默认情况下,类型字符串不使用小写筛选器@Oyeme,我有一个数据驱动的架构配置。对于不区分大小写的索引和查询,我该怎么做?我所有的字段都是字符串类型。方法是否也适用于字符串类型???@RajeevRajvaidya您应该将类型字符串更改为其他类型。默认情况下,类型字符串不使用小写筛选器@Oyeme,我有一个数据驱动的架构配置。对于不区分大小写的索引和查询,我该如何处理
<field name="Name" type="text_general" indexed="true" stored="true"/>
<fieldType name="text_general" class="solr.TextField" omitNorms="false" positionIncrementGap="100" multiValued="true">
  <analyzer type="index">
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" words="stopwords.txt" ignoreCase="true"/>
    <filter class="solr.LowerCaseFilterFactory"/>
  </analyzer>
  <analyzer type="query">
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" words="stopwords.txt" ignoreCase="true"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    tokenizerFactory="solr.WhitespaceTokenizerFactory"/>
  </analyzer>
</fieldType>