[英]Solr - Get a string field without case sensitive
我在電子商務網站上使用 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
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.