我有一種特殊問題(至少我認爲它是一個^^)。我希望我能描述我想要做的事情:Lucene - 在索引中搜索一組單詞
我有一套條款(字符串),每項也有一個分數(雙)。 我現在想要將這些條款與我的lucene索引中的文檔相匹配。
但我想考慮這些術語的所有可能的組合。 起初我的想法是簡單地建立一個巨大的
`BooleanQuery: field1:term1 OR field1:term2 .... OR field2:term1 OR field2:term2 ...`
但這個查詢當然會不一樣的結果返回爲生成一個單獨的查詢每個術語:
`Query1: field1:term1 OR field2:term1 ...`
`Query2: field1:term2 OR field2:term2 ...`
的問題是,我的應用程序是一個紅外應用程序,這些條款是自動生成/提取的,我不知道,應該一起搜索哪些條款或單獨更好。所以我想擁有「兩全其美」。
有沒有一種方法可以查詢我的術語列表的所有可能的組合?
我當然可以做一些循環,併爲每一個可能的組合查詢,但將永遠可能運行...
希望你明白我想要什麼,能不能幫我:)謝謝!
運行查詢,我可能不知道我想要什麼太大^^。我的問題是,當我在一個查詢中搜索所有條款(與OR相關)時,有些詞主宰了結果。意味着前n個結果完全基於其中一個關鍵字。但是,如果我對每個術語進行單獨查詢,我將放棄可能由於合併一些術語而導致的(也許是現有的)利益。我知道這是預期的行爲,但我希望有一些我錯過的魔術。 – dburgmann
更新了我的回答,提供了一些關於理解和調整評分的提示。 – femtoRgon