在字段中搜索多个术语

时间:2009-07-10 09:35:45

标签: lucene

我想在Lucene.NET中进行AND查询,比如'foo AND bar'。我有一个WholeIndex字段,它将整个文档编入索引,我希望Lucene在整个文档中进行搜索。 到目前为止这很容易,但是有一个约束。

我希望'foo'和'bar'这两个术语都在同一个字段中。

有没有一种简单的方法可以在不查询完整字段列表的索引并在每个字段中搜索的情况下执行此操作?

编辑:我想知道的是,是否有办法告诉Lucene在每个字段中执行搜索,而无需知道索引中的所有字段。搜索以下内容的自动方式:

“field1:(+ foo + bar)field2:(+ foo + bar)... fieldN:(+ foo + bar)”

1 个答案:

答案 0 :(得分:2)

您可以使用GetFieldNames获取所有字段名称,然后使用BooleanQuery以编程方式在列表上生成与您编写的查询类似的查询。