1

我在基于 Lucene 的搜索中遇到问题。我设计了一个包含五个字段的文档。考虑该文档是带有 addressline1、addressline2、city、state 和 pin 的 Address。如果要执行搜索,则搜索已在所有字段中完成,因此我使用的是布尔术语查询。因此将检索结果。现在,我不仅要响应响应,还要响应匹配字段。例如,如果城市字段与搜索匹配,那么我应该响应城市匹配搜索以及实际搜索响应。是否有任何 lucene api 来适应这个?

4

1 回答 1

2

AFAIK 没有简单的解决方案来找出与查询匹配的字段。

您的选择是:

  1. 尝试使用命中荧光笔(它知道匹配发生的位置,但在大型结果集上明显变慢)
  2. 摆弄 IndexSearcher 的解释方法
  3. 构建您的定制解决方案

点击荧光笔体验和解决方法发现。

恕我直言,自己实现这一点应该不难,因为 Lucene 在某个时间点肯定知道哪个字段产生了匹配项,但是在组成您的响应时,它会将该信息作为不必要的权重丢弃。
我偶然发现了这种自定义方法

尝试在最好的 Lucene/Solr 相关搜索引擎 search-lucene.com 上查找更多资源。

于 2012-07-29T00:24:16.083 回答