我正在爲Lucene.net編寫一個搜索引擎,用於大約200萬種產品的數據庫。我使用的是Snowball Analyzer
,到目前爲止,我對性能和結果集印象深刻。Lucene:檢測缺失空間
我似乎無法克服的一個問題是檢測到搜索輸入中缺失的空格。
例如:
用戶正在尋找「黑鑽石」品牌的產品,但他們搜索「黑鑽」。
由於雪球分析儀創造了黑鑽兩個獨立Tokens
我得到結果。
我可以採取什麼方法來糾正這個問題?我看了一下Shingle Analyzer
(n-gram),但不知道這是否有幫助。
是否有可能將Shingle Analyzer
與SpellChecker
(並且這是一個效果解決方案)?這將是想法,如果我可以提示人們你是否意指:「黑鑽石」?發生此情況時的鏈接。
看看lucene 4.0 WordBreakSpellChecker https://issues.apache.org/jira/browse/LUCENE-3523。如果它很容易移植它,這將是一個簡單的解決方案 –
我會試一試。我敢打賭,它有4.0 tho其他依賴項。我正在運行3.0,但也許我可以複製這個概念。謝謝 – NSjonas