1
關於我之前的問題(Lucene downgrade 3.6.0 to 3.5.0),我想知道如何過濾那些有或沒有特定字段的文檔(在Lucene 3.5.0中)(無論內容領域的)。在Lucene 3.6.0中有一個FieldValueFilter類可以用來做到這一點。同樣的問題被問到here,但我不知道如何使用API來完成同樣的事情。Lucene - 過濾具有特定字段的文檔
關於我之前的問題(Lucene downgrade 3.6.0 to 3.5.0),我想知道如何過濾那些有或沒有特定字段的文檔(在Lucene 3.5.0中)(無論內容領域的)。在Lucene 3.6.0中有一個FieldValueFilter類可以用來做到這一點。同樣的問題被問到here,但我不知道如何使用API來完成同樣的事情。Lucene - 過濾具有特定字段的文檔
最後我自己找到了解決方案。我用TermRangeFilter。我所包含的ID工作(存儲爲字符串)的領域,所以我用了以下過濾器:
Filter filter = new TermRangeFilter("field", "0", null, true, false);
也可以用這個短代碼來實現同樣的事情:
Filter filter = TermRangeFilter.More("filter", "0");
該解決方案似乎上班。我希望這會幫助別人!
如果你想要所有的值,那麼爲什麼限制爲「0」?你可以使用:Filter Filter = new TermRangeFilter(「field」,null,null,false,false); 轉換爲:字段:{* TO *} –