2017-07-03 97 views
0

我試圖執行不區分大小寫的搜索到我的titlecontent 字段,但無濟於事。我嘗試了以下方法:Solr小寫不工作

<filter class="solr.LowerCaseFilterFactory" />添加到'text_general'字段類型schema.xml/managed-schema.xml,以'索引'和'分析'標記化器。

enter image description here

我的標題和內容領域都將被 'text_general' 類型的。 enter image description here

我試圖尋找以下:

  • *abc*:出現 'ABC' 的沒有結果
  • *ABC*:只有 'ABC' 顯示的搜索結果。

這清楚地表明小寫字母過濾器不起作用。下面還粘貼了第一個查詢的調試結果。

enter image description here

而且下面是標題字段的屏幕截圖分析樣品文本時。輸出似乎沒問題,但搜索不按預期工作。這是一個搜索查詢問題嗎?

enter image description here

感謝先進的任何幫助!

+0

如果你改變現有的模式,那麼你必須重新索引 –

+0

@AshrafulIslam嗨,是啊重新索引和重新啓動solr實例。我甚至重新創建了新的內核來測試。 – codeandfootball

回答

0

不,它並沒有清楚地表明小寫過濾不起作用 - 您遇到的是most filters or tokenizers aren't applied when you're doing a wildcard search(因爲它們實際上無法用於通配符搜索的乾淨地方,因爲它們沒有整個任期)。

如果您想要執行通配的小寫搜索,則解決方案是在實際編制索引之前對字段進行壓縮或處理,並根據需要僅使用分詞器分割文本(其中LowercaseTokenizer似乎是the only one that is a MultiTermAwareComponent)。否則,如果您不想執行字符串的任何標記或拆分,請使用string字段。

您可以使用您自己的代碼將內容發送到Solr或in an update processor