首页 > 其他分享 >通过DSL实现Elasticsearch数据高亮处理

通过DSL实现Elasticsearch数据高亮处理

时间:2023-06-03 23:57:56浏览次数:48  
标签:高亮 标签 查询 关键字 DSL Elasticsearch false match

高亮显示的实现分为两步:

  • 1)给文档中的所有关键字都添加一个标签,例如标签
  • 2)页面给标签编写CSS样式

语法:

点击查看代码
GET /hotel/_search
{
  "query": {
    "match": {
      "FIELD": "TEXT" // 查询条件,高亮一定要使用全文检索查询
    }
  },
  "highlight": {
    "fields": { // 指定要高亮的字段
      "FIELD": {
        "pre_tags": "<em>",  // 用来标记高亮字段的前置标签
        "post_tags": "</em>" // 用来标记高亮字段的后置标签
      }
    }
  }
}

注意:

  • 高亮是对关键字高亮,因此搜索条件必须带有关键字,而不能是范围这样的查询。
  • 默认情况下,高亮的字段,必须与搜索指定的字段一致,否则无法高亮
  • 如果要对非搜索字段高亮,则需要添加一个属性:required_field_match=false

示例:

点击查看代码
GET /hotel/_search
{
  "query": {
    "match": {
      "all": "希尔顿上海"
    }
  },
  "highlight": {
    "fields": {
      "name": {
        "require_field_match": "false"
      }
    }
  }
}

标签:高亮,标签,查询,关键字,DSL,Elasticsearch,false,match
From: https://www.cnblogs.com/wzh-Official/p/17455034.html

相关文章

  • 通过DSL实现Elasticsearch数据排序功能
    普通字段排序语法:点击查看代码GET /indexName/_search{  "query": {    "match_all": {}  },  "sort": [    {      "FIELD": "desc"  // 排序字段、排序方式ASC、DESC    }  ]}示例:点击查看代码GET/hotel/_search{"q......
  • 通过DSL实现Elasticsearch数据搜索功能
    DSL查询分类查询所有:查询出所有数据,一般测试用。例如:match_all全文检索(fulltext)查询:利用分词器对用户输入内容分词,然后去倒排索引库中匹配。例如:match_querymulti_match_query精确查询:根据精确词条值查找数据,一般是查找keyword、数值、日期、boolean等类型字段。例如:i......
  • 4种数据同步到Elasticsearch方案
    上周听到公司同事分享MySQL同步数据到ES的方案,发现很有意思,感觉有必要将这块知识点再总结提炼一下,就有了这篇文章。本文会先讲述数据同步的4种方案,并给出常用数据迁移工具,干货满满!不BB,上文章目录:1.前言在实际项目开发中,我们经常将MySQL作为业务数据库,ES作为查询......
  • 当Elasticsearch遇见Kafka
    Elasticsearch作为当前主流的全文检索引擎,除了强大的全文检索能力和高扩展性之外,对多种数据源的兼容能力也是其成功的秘诀之一。而Elasticsearch强大的数据源兼容能力,主要来源于其核心组件之一的Logstash,Logstash通过插件的形式实现了对多种数据源的输入和输出。Kafka是一种高吞......
  • Elasticsearch专题精讲—— REST APIs —— Document APIs —— Delete by query API
    RESTAPIs——DocumentAPIs——DeletebyqueryAPIhttps://www.elastic.co/guide/en/elasticsearch/reference/8.8/docs-delete-by-query.htmlDeletesdocumentsthatmatchthespecifiedquery.删除与指定查询匹配的文档。curl-XPOS......
  • Elasticsearch专题精讲—— REST APIs —— Document APIs —— Delete API
    RESTAPIs——DocumentAPIs——DeleteAPIRemovesaJSONdocumentfromthespecifiedindex.从指定的索引中移除JSON文档。1、Request(请求)https://www.elastic.co/guide/en/elasticsearch/reference/8.8/docs-delete.......
  • Elasticsearch介绍及安装
    elasticsearch的作用elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容。倒排索引倒排索引的概念是基于MySQL这样的正向索引而言的。elasticsearch便是基于倒排索引实现快速查找的功能。倒排索引中有两个非常重要的概......
  • Elasticsearch专题精讲—— REST APIs —— Document APIs —— GET API
     RESTAPIs——DocumentAPIs——GETAPIhttps://www.elastic.co/guide/en/elasticsearch/reference/8.8/docs-get.html#docs-getRetrievesthespecifiedJSONdocumentfromanindex.从索引中检索指定的JSON文档。......
  • docker安装elasticsearch
    一、环境CentOSelasticsearch5.6.12二、安装1.镜像拉取dockerpullelasticsearch:5.6.122.启动镜像dockerrun--nameelasticsearch-d-eES_JAVA_OPTS="-Xms256m-Xmx256m"-e"discovery.type=single-node"-p9200:9200-p9300:9300elasticsearch:5.6.12注......
  • elasticsearch常用命令总结
    目录#查看集群状态curlhttp://*:9200/_cluster/health?pretty#查看所有索引状态curl"http://*:9200/_cat/indices?pretty"#查看异常索引状态curl"http://*:9200/_cat/indices?v&health=red"#查看异常索引分片分配状态curl"http://*:9200/_cat/shards/your_inde......