0

我遇到了一个我似乎无法用 Lucene.net 解决的问题。我们将 Lucene.net 用于自动完成字段,并希望以搜索词开头的命中显示在列表顶部和下面的其他命中。

基本上,我想要的是搜索结果,从搜索词开始,得到某种提升,出现在顶部。

我已经检查了 CustomScoreProvider 和 CustomScoreQuery,但我无法想象如何使用它来做我想做的事情,并且没有关于如何实现它的好例子。但也许我在错误的树上吠叫,因为这很可能是通过设置一些属性或其他东西来实现的。

4

1 回答 1

1

您可以通过更改查询而不是更改评分算法来解决此问题。

所以你的查询本来是:

Field:(this is a piece of text)

变成:

Field:"this is a piece of text*"^2 OR Field:(this is a piece of text)
于 2013-01-10T01:59:27.110 回答