Elasticsearch全文检索,高亮关键字
问题
用如下这样的term方式,可以高亮
.setQuery(QueryBuilders.termQuery("PARAM_NAME", "a"))
{
"query": {
"term": {
"body.priority": "error"
}
},
"highlight" : {
"fields" : {
"*" : {}
}
}
}
用如下这样queryString方式,高亮无效
.queryStringQuery("asdf"))
{
"query" : {
"query_string" : {
"query" : "ERROR"
}
},
"highlight" : {
"fields" : {
"*" : {}
}
}
}
解决
增加require_field_match:false,之后匹配的field设置为false之后可以高亮了。
{
"query": {
"query_string": {
"query": "test"
}
},
"highlight": {
"require_field_match": false,
"explain": true,
"fields": {
"*": {}
}
}
}
api修改
String query = "{\"query\": {\"query_string\": {\"query\": \"test\"}}}";
SearchRequestBuilder builder = client.prepareSearch("twitter").setTypes("tweet").setQuery(query)
.addHighlightedField("*")
.setHighlighterRequireFieldMatch(false)
.setSize(10);
SearchResponse response = builder.execute().actionGet();
作者:水他
链接:http://www.jianshu.com/p/342119123d64
來源:简书
著作权归作者所有。
Elasticsearch全文检索,高亮关键字的更多相关文章
- ElasticSearch 全文检索— ElasticSearch概述
ElasticSearch 产生背景 1.海量数据组合条件查询 2.毫秒级或者秒级返回数据 Lucene 定义 lucene是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一 ...
- 干货 |《从Lucene到Elasticsearch全文检索实战》拆解实践
1.题记 2018年3月初,萌生了一个想法:对Elasticsearch相关的技术书籍做拆解阅读,该想法源自非计算机领域红火已久的[樊登读书会].得到的每天听本书.XX拆书帮等. 目前市面上Elast ...
- Elasticsearch常用DSL关键字
Elasticsearch常用DSL关键字 query: 用于包含查询使用到的语法 match_all: 最简单的查询,获取索引所有数据,类似搜索 *.如:"query":{&qu ...
- 从查询重写角度理解elasticsearch的高亮原理
一.高亮的一些问题 elasticsearch提供了三种高亮方式,前面我们已经简单的了解了elasticsearch的高亮原理; 高亮处理跟实际使用查询类型有十分紧密的关系,其中主要的一点就是muti ...
- Elasticsearch全文检索工具入门
Elasticsearch全文检索工具入门: 1.下载对应系统版本的文件 elasticsearch-2.4.0.zip 1.1运行elasticsearch-2.4.0\elasticsearch- ...
- 基于vue实现搜索高亮关键字
有一个需求是在已有列表中搜索关键词,然后在列表中展示含有相关关键字的数据项并且对关键字进行高亮显示,所以该需求需要解决的就两个问题: 1.搜索关键词过滤列表数据 2.每个列表高亮关键字 ps: 此问题 ...
- 《从Lucene到Elasticsearch全文检索实战》的P184页
curl -XPOST "http://localhost:9200/_bulk?pretty" --data-binary @books.json 这句话在书中是以crul的命令 ...
- 微信小程序搜索并高亮关键字
更多解读可使用博客: https://www.jianshu.com/p/86d73745e01c 实现流程:1.在文本框中输入关键字key,如"比赛",检索出比赛相关的列表key ...
- springboot ElasticSearch 简单的全文检索高亮
原文:https://segmentfault.com/a/1190000017324038?utm_source=tag-newest 首先引入依赖 <dependency> <g ...
随机推荐
- 《DSP using MATLAB 》示例Example6.3
代码: C0 = 0; B1 = [2 4; 3 1]; A1 = [1 1 0.9; 1 0.4 -0.4]; B2 = [0.5 0.7; 1.5 2.5; 0.8 1]; A2 = [1 -1 ...
- delete和truncate操作
SQL> --查询表的结构SQL> desc student; 名称 是否为空? 类型 ----------------------------------------- -------- ...
- {Reship}{Emgu}{vs2010}C#配置Emgu
=============================================================================================This Ar ...
- 如何在aspx.cs 里面获取html 控件值
aspx 页面 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default. ...
- BZOJ4547 Hdu5171 小奇的集合
题意 有一个大小为n的可重集S,小奇每次操作可以加入一个数a+b(a,b均属于S),求k次操作后它可获得的S的和的最大值.(数据保证这个值为非负数) 对于100%的数据,有 n<=10^5,k& ...
- py2exe转换参数
在公司用python写了个统计数据并通过xlsxwriter模块生成excel的小工具, 完成后使用py2exe转换成exe文件过程中遇到了些问题, 记录下. from distutils.core ...
- geohash 精度
关于地图的距离. $list1=Db::name('museum')->where('id','in',$user['gz'])->order('ACOS(SIN(('.$lat.' * ...
- elipse中开发servlet,直接run as 时出现404错误的解决方法
在elipse中开发servlet时,无论在IDE中运行,还是在浏览器中访问servlet时,一直报404错误, 后发现在build目录中没有生成相应的类文件,后反复采用project中的clean. ...
- 题目1413:神秘元素 ——lis的元素是否唯一
求序列的最长子序列中不可分割元素的数目.不可分割元素,肯定属于某一个最长子序列,首先做的就是把属于最长子序列的数提取出来,减小查找范围.怎么提取?可以用LIS(最长递增子序列)和LDS(最长递减子序列 ...
- Ubantu 安装fftw3
FFTW官网 FFTW ( the Faster Fourier Transform in the West) 是一个快速计算离散傅里叶变换的标准C语言程序集. ubuntu下安装指令: sudo a ...