ElasticSearch关于自定义分词器模糊检索数字+字母

这篇具有很好参考价值的文章主要介绍了ElasticSearch关于自定义分词器模糊检索数字+字母。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一 、前言

之前的系统由于一些表的数据已经达到1~2百万行的数据了,而且还在与日俱增,一些条件比较复杂的检索,已经明显感觉到比较慢,影响用户的使用体验。所以引入的ElasiticSearch进行检索优化,效果还是比较好的。因为之前都没有怎么涉及到模糊检索这一块需求,只是为了速度引入了ES。更之前的认知,是知道引入ik分词器之后能对中文进行很好的分词,也进行过相关的模糊检索都没有出现问题。

二、问题

直到有个业务需要对电话号码进行模糊检索,发现只能精准检索,通过

@Field(type = FieldType.Long,analyzer="simple")
@Field(type = FieldType.Text,analyzer="simple")

非字母分词也还是不能检索出来。

es数字模糊匹配,踩过的坑,java,elasticsearch,spring boot

之后还有对字母+数字的字段模糊检索的需求,更是没有办法实现。

三、解决思路

  1. 首先想到的思路是,之前数据录入ES的时候,都是以Json的形式。

    bulkRequest.add(new IndexRequest("apply_car").source(JSONUtil.toJsonStr(ocApplyCars.get(j)), XContentType.JSON));

    所以觉得是不是因为字符串不能数字分词的原因,所以尝试着在网上找到了,文章来源地址https://www.toymoban.com/news/detail-599638.html

到了这里,关于ElasticSearch关于自定义分词器模糊检索数字+字母的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Elasticsearch 全文检索 分词检索-Elasticsearch文章四

    https://www.elastic.co/guide/en/enterprise-search/current/start.html https://www.elastic.co/guide/en/elasticsearch/reference/7.17/query-dsl-match-query.html Full text Query中,我们只需要把如下的那么多点分为3大类,你的体系能力会大大提升 很多api都可以查得到,我们只要大概知道有支持哪些功能 Elasticsearch 执行

    2024年02月14日
    浏览(52)
  • ElasticSearch中文分词和模糊查询

            ElasticSearch是一个一个分布式的实时文档存储,每一个字段都可以被索引与搜索,并且能支持PB级别的结构化或者非结构化数据。早期我们应用的全局搜索是简单的SQL模糊查询,为了分担数据库压力所以用了ES,选择他的原因除了以上几点外,还有其提供的API方式简单

    2024年02月03日
    浏览(52)
  • elasticsearch 基于ik分词器的分词查询和模糊匹配

    前言:elasticsearch 查询有很多,查询的条件有固定格式,返回结果提示不明确,让ES使用起来有点不方便的感觉,ES查询方式很多,简单介绍几种使用点的,实用的 此处简单梳理一下最常用的查询 模糊匹配查询 类似 mysql 语法中的 like ‘%value%’ 类似于百度的分词查询 将

    2024年02月16日
    浏览(38)
  • ElasticSearch 实现分词全文检索 - SpringBoot 完整实现 Demo

    需求 做一个类似百度的全文搜索功能 搜素自动补全(suggest) 分词全文搜索 所用的技术如下: ElasticSearch Kibana 管理界面 IK Analysis 分词器 SpringBoot 实现流程 可以通过 Canal 对 MySQL binlog 进行数据同步,或者 flink 或者 SpringBoot 直接往ES里添加数据 当前以 SpringBoot 直接代码同

    2024年02月03日
    浏览(43)
  • Java项目(二)--Springboot + ElasticSearch 构建博客检索系统(3)- 分词器介绍

    ES作为全文检索服务,势必要对原始的文本进行内容的拆分,才能进行有效的索引。而拆分原始内容到一个一个小的词,或语义单元,这部分的功能由ES的分词器去完成的。 常见分词器 standard:ES默认的分词器,会将词汇单元进行小写形式,并且去除一些停用词和标点符号等等

    2024年02月10日
    浏览(40)
  • springboot+Elasticsearch实现word,pdf,txt内容抽取并高亮分词全文检索

    文章目录 需求 一、环境 二、功能实现 1.搭建环境 2.文件内容识别 三.代码         产品希望我们这边能够实现用户上传PDF,WORD,TXT之内得文本内容,然后用户可以根据附件名称或文件内容模糊查询文件信息,并可以在线查看文件内容         项目开发环境:           

    2023年04月09日
    浏览(47)
  • ES自定义分词,对数字进行分词

    需求:需要将下面类似的数据分词为:GB,T,32403,1,2015 我们使用的Unicode进行正则匹配,Unicode将字符编码分为了七类,其中 P代表标点 L 代表字母 Z 代表分隔符(空格,换行) S 代表数学符号,货币符号 M代表标记符号 N 阿拉伯数字,罗马数字 C其他字符 例如:所以pP的作用是匹配

    2024年02月15日
    浏览(38)
  • 自定义分词器:ElasticSearch自定义分词器

    自定义分词器:ElasticSearch自定义分词器 ElasticSearch是一个开源的搜索和分析引擎,它提供了实时的、可扩展的、高性能的搜索功能。ElasticSearch使用Lucene库作为底层搜索引擎,它提供了强大的文本分析和搜索功能。在ElasticSearch中,分词器是将文本拆分为单词的过程,它是搜索

    2024年02月20日
    浏览(33)
  • es自定义分词器对数字分词

    背景:就是一个搜索框,可以输入产品名称、产品code、产品拼音、产品缩写等内容来查询。 问题:就是像产品code这种,比如00034,分词完还是00034,直接查询00是查不到的。 一开始的方案一,就是multi_match产品名称、产品缩写这些,然后前缀查询产品code,然后再should一下。但

    2024年02月02日
    浏览(34)
  • 基于 centos7 搭建 laravel+scout+elasticsearch+ik-analyzer 用于中文分词全文检索服务及测试

    浏览该文章,建议先食用 异常问题 这一节 软件/框架 版本 jdk 19.0.2 elasticsearch 8.1.1 ik-analyzer 8.1.1 laravel 7.x-dev elasticsearch/elasticsearch 7.17.1 tamayo/laravel-scout-elastic 8.0.3 下载jdk传送门 安装 下载:wget https://download.oracle.com/java/19/latest/jdk-19_linux-x64_bin.rpm 安装:rpm -ivh jdk-19_linux-x64_bin.

    2023年04月09日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包