2011-02-08 55 views
0

我正在使用lucene作爲搜索引擎。當我們使用standardAnalyser時,停用詞會被過濾掉。這意味着,當我們搜索帶有停用詞的短語時,我們無法找到確切短語的結果。 例如,我們搜索「這是一款遊戲」,它尋找「這款遊戲」。 (我看它是以這種方式工作)Lucene java,使用跨度查詢來查找每頁點擊量

如果有人正在搜索'a'或'the'etc(停用詞),但不在詞組搜索中,我需要過濾掉停用詞。

編輯:看起來像它的工作QueryParser對象。

但是,我不能得到單個文檔中每個頁面點擊次數的結果以進行詞組搜索。我正在尋找使用SpanQuery,關於如何使用它的任何想法?

感謝, 夏爾馬

回答

2

當您篩選停止詞,這些詞的相對位置沒有被修改。例如,「這是一個遊戲」的結果: 這在pos 0 比賽在POS 3

當您生成一個短語查詢(一般使用查詢分析器)使用相同的禁用詞如預期它會以這種方式工作。

但是,可能會出現一些工件。短語 「這是一個遊戲」 「這是一些遊戲」

都將匹配同樣適合查詢「這是一個遊戲」。

關於SpanQuery ......我不太明白這個問題。

+0

我想使用跨度查詢對象查找每頁的點擊數。那可能嗎? – remo 2011-02-08 20:35:53