.NET 的 Lucene 范围搜索

Lucene Range Search for .NET

我已将最小值和最大值编入索引。调用搜索函数时,当值介于 min 和 max 之间时,它应该 return 。我是 Lucene .NET 4.8.0

的新手

任何帮助将不胜感激

您需要使用Lucene.Net.Search.NumericRangeQuery,此查询匹配特定范围内的数值。

在你的情况下(在 Lucene 语法中)它将是:

max:[value TO *] AND min:[* TO value]

其中 value 是您的输入。如果您希望值是独占的 - 您应该使用 { 而不是 [

在Lucene.NET中应该是这样的:

Query q = NumericRangeQuery.newFloatRange(“fieldName”, new Float(value), float.MaxValue, true, true);

与第二部分类似,将 * 替换为最小浮点值