使用 copyField 突出显示 Solr

标签 solr highlighting

我有一个 solr 实例,我在文本正文的索引时间使用 copyField 将其通过两个不同的分析器。我想突出显示两个字段,所以我将两个字段都设置为存储=真。这会使我认为是重复数据的索引的文本存储膨胀。

所以

1)有没有办法将一个字段指向其他字段存储的文本?

和/或

2)是否有更好的方法来保持不同分析器的突出显示?

我使用的是 solr 6.5,但可以更新到 7。

最佳答案

1)有没有办法将一个字段指向其他字段存储的文本?

答:如果您试图将一个字段指向另一个字段的分析值,答案是否定的。您可以做的实际上就是您正在做的事情,使用 copyField 在同一个输入值上有两个不同的分析器。

2)是否有更好的方法来保持不同分析器的突出显示?

答:恐怕答案是否定的,至少不是 100% 匹配...您可以做的是查询一个字段并引用另一个字段(使用不同的分析器)以突出显示,使用参数 hl.fl。但正如所说 here :

if the query references fields different from the field being highlighted and they have different text analysis, the query may not highlight query terms it should have and vice versa. The analysis used is that of the field being highlighted (hl.fl), not the query fields

关于使用 copyField 突出显示 Solr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46921052/

相关文章:

java - Solr 导入命令不起作用

PHP/MySQL : Highlight "SOUNDS LIKE" query results

python - 如何在当前行的开头显示竖线?

search-engine - elasticsearch突出显示结果中缺少的属性

Solr 范围查询特定 id,如/solr/select?q=x :[1, 2,5,11,64589]

solr - 删除文档后 SOLr 索引大小会减小吗?

Solr排序似乎不起作用

.net - 使用 Lucene.NET 索引 .PDF、.XLS、.DOC、.PPT

emacs 在删除之前预览重复的行

emacs - 在 Emacs 中获取面孔以共享背景颜色