如何使SOLR分组/字段折叠不区分大小写

时间:2013-09-03 19:27:06

标签: solr

在我们的SOLR实现中,我们使用分组/字段折叠来确保提前输入结果是唯一的。我们的内容可能具有相同的显示字词,但背后有差异代码(涉及多个字段)。

在大多数情况下,这很好用。我们分组的字段是标准的StrField。但是,如果显示术语处于不同的情况(即:solr vs SOLR),那么这种情况就会崩溃。

如何使分组不区分大小写?另一个问题是我们不希望将字符串标记为多个单词。例如:

术语是“SOLR岩石”,“solr rocks”和“SOLR很棒”。搜索SOLR的结果应该是“SOLR rocks”和“SOLR很棒”。如果流被标记化,则所有三个将被组合在一起。

由于

1 个答案:

答案 0 :(得分:1)

使用非标记化的小写字符串字段进行分组 这应该确保分组是不区分大小写的。

e.g。字段类型配置

<fieldType name="lowercase" class="solr.TextField" positionIncrementGap="100">
  <analyzer>
    <tokenizer class="solr.KeywordTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory" />
  </analyzer>
</fieldType>