Solr语言 - 获取不区分大小写的字符串字段



我使用solr引擎到电子商务网站,我已经将搜索标签存储为单个字段中的字符串,如下所示,我需要将该字段转换为不区分大小写。我试图应用小写过滤器工厂,它不工作的字段

<field name="tags" type="string" multiValued="true" indexed="true" stored="true"/>
<fieldType name="string" class="solr.StrField" sortMissingLast="true" docValues="true"/>
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>

字段样本

"tags":["Property",
"House",
"Land",
"Home",
"House For Sale",
"Property For Sale",
"Land For Sale",
"Prime property for sale",
"Prime property for sale in Colombo 03"],

您已经将字段定义为StrField。字符串字段不能附加分析链。您必须将其更改为TextField:

<fieldType name="string" class="solr.TextField" sortMissingLast="true" docValues="true"/>
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>

但是,我建议为该字段使用不同于string的名称,因为string字段类型预计以特定方式工作(例如用于id字段等)。相反,使用一些描述它所做的事情的东西,比如string_caseinsensitive

相关内容

  • 没有找到相关文章

最新更新