簡體   English   中英

Solr - 獲取不區分大小寫的字符串字段

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM