Elasticsearch / Lucene亮点 [英] Elasticsearch/Lucene highlight
本文介绍了Elasticsearch / Lucene亮点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何使用fuzzyLikeThisFieldQuery在弹性搜索中突出显示结果查询?我可以拿起fuzzyQuery,但不能使用fuzzyLikeThisFieldQuery。例如,在下面的代码中,我使用fuzzyQuery:
How to highlight result query with fuzzyLikeThisFieldQuery in elasticsearch? I can pick up on fuzzyQuery but not fuzzyLikeThisFieldQuery. For example, in the code below i used fuzzyQuery:
QueryBuilder allquery = QueryBuilders.fuzzyQuery("name", "fooobar").minSimilarity(0.4f);
SearchRequestBuilder builder = ds.getElasticClient()
.prepareSearch("data")
.setQuery(allquery)
.setFrom(0)
.setSize(10)
.setTypes("entity")
.setSearchType(SearchType.DEFAULT)
.addHighlightedField("name")
.addField("name");
SearchResponse sr = builder.execute().actionGet();
结果是
If you want to have a <em>foobar</em> for oracle
但是,如果我使用fuzzyLikeThisFieldQuery,没有突出显示
But if i use fuzzyLikeThisFieldQuery, didn't highlight
QueryBuilder allquery = QueryBuilders.fuzzyLikeThisFieldQuery("name").likeText("fooobar").minSimilarity(0.4f);
结果是
If you want to have a foobar for oracle
任何人都知道为什么? p>
Anyone know why?
推荐答案
您需要调用这两个函数来设置荧光笔标签。
You need to call these two functions to set the highlighter tags..
builder.setHighlighterPreTags("<pre>").setHighlighterPostTags("</pre>");
这篇关于Elasticsearch / Lucene亮点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文