我有一個從數據庫填充的Lucene索引。我存儲/索引一些字段,然後添加一個FullText字段,在該字段中索引所有其他字段的內容,以便我可以進行一般搜索。Lucene - 在不同的字段中搜索幾個術語
現在讓我們假設我有以下兩個字段的文檔: FLD1 - 「三星發佈新的22英寸的液晶屏」 FLD2 - 「索尼愛立信的手機電池爆炸」
如果用戶執行「三星手機」,他可能只是想要關於三星手機的消息,而不是關於三星屏幕和索尼手機信息的文檔,但是在FullText字段中搜索,我會將其作爲有效結果。 有沒有一種很好的方法來處理這個問題?
我和一些分離想到索引和做一個SpanNotQuery,所以全文領域會有這樣的內容: 「三星發佈新的22英寸的液晶屏MYLUCENESEPARATOR索尼愛立信手機的電池爆炸」,然後做一個SpanNotQuery與MYLUCENESEPARATOR作爲非生成項。
這是一個很好的解決方案嗎?它有兩個以上的條件,可以擴展嗎?我擔心這會是一個表現殺手。有沒有更好的方法來實現這一目標?
我接受了你的答案,但忘了投票了。也許有點晚了,但現在就做了:-) – raven 2010-07-09 13:13:43
謝謝你,海梅。 – 2010-07-10 03:24:41