0
我們在我們的代碼中使用Lucene v3.6。我們首先對數據進行索引,然後使用Lucene搜索來搜索術語。使用盧克我已經證實,當我們對像橋本這樣的詞彙進行索引時,它會被索引到我假設的撇號中(因爲當我從獲得的結果中搜索橋本時,我可以確認相應的字段值包含了作爲橋本的撇號,當我搜索橋本氏(甚至在盧克)我不回來了場任何結果。例如Lucene 3.6 +用撇號搜索術語的問題
+names.name:hashimoto (works and returns multiple results some which have Hashimoto's as a term)
+names.name:hashimoto's (does not work - no results)
在這兩種情況下,我使用的是StandardAnalyzer它從我的理解應該處理沒有撇號問題
在我的代碼中,我使用了StandardAnalyzer。我使用tokenStream方法從StandardAnalyzer獲取標記並使用它們構建查詢。從一些研究,例如http://stackoverflow.com/questions/1190699/storing-words-with-apostrophe-in-lucene-index我明白應該使用StandardAnalyzer原生支持撇號。但似乎並非如此。正如我所提到的,在使用Luke搜索我的索引以及選擇StandardAnalyzer的情況下,這也沒有幫助。 – user1111871