Lucene - 过滤具有特定字段的文档

时间:2012-09-05 16:08:45

标签: java search lucene

关于我之前的问题(Lucene downgrade 3.6.0 to 3.5.0),我想知道如何过滤掉那些有或没有特定字段的文件(在Lucene 3.5.0中)(无论字段内容如何) 。在Lucene 3.6.0中,有一个FieldValueFilter类可用于执行此操作。同样的问题被问到here,但我不确定如何使用API​​完成同样的事情。

1 个答案:

答案 0 :(得分:1)

最后我自己找到了解决方案。我用了TermRangeFilter。我正在使用的字段包含ID(存储为字符串),因此我使用了以下过滤器:

Filter filter = new TermRangeFilter("field", "0", null, true, false);

使用这个短代码也可以实现同样的目的:

Filter filter = TermRangeFilter.More("filter", "0");

此解决方案似乎有效。我希望这会对某人有所帮助!