2010-04-06 58 views
5

我正在嘗試使用Apache Lucene在短語「Grand Prarie」(故意拼寫錯誤)上進行模糊匹配。我的問題的一部分是,~運營商只對單個詞語進行模糊匹配,並且表現爲短語的鄰近匹配。Lucene模糊匹配短語而不是單個單詞

有沒有辦法用lucene對短語進行模糊匹配?

回答

2

對模糊短語沒有直接支持,但可以通過明確地enumerating the fuzzy terms進行模擬,然後將它們添加到MultiPhraseQuery。得到的查詢如下所示:

<MultiPhraseQuery: "grand (prarie prairie)"> 
+0

+1。要走的路線 – Yaroslav 2010-04-07 06:22:00

+2

您能詳細解釋一下嗎?我沒有直接使用Lucene,而是通過Solr。 我可能不得不在閱讀lucene的時候才行。我不介意更好地理解這兩者如何協同工作,並在更基本的層面上適應它。 現在,在Solr中,我使用solr.PhoneticFilterFactory分析器實現了足夠有效的功能。 – Koobz 2010-04-08 05:06:26

1

通過谷歌來到這裏,並感受到解決方案,而不是我在之後。 在我的情況下,解決方案是簡單地重複搜索序列對solr API。 因此,舉例來說,如果我一直在尋找:title_t包括比賽爲「狗〜」和「貓〜」,我加了一些手工代碼來生成查詢爲:

((title_t:dog~) and (title_t:cat~)) 

這可能只是什麼上面查詢是關於,但是鏈接似乎死了。

+0

這就是我需要:)謝謝 – Oyeme 2015-08-19 12:58:01

相關問題