真枫无影 2021-09-06 12:29 采纳率: 50%
浏览 1430
已结题

IK 分词,当英文与数字 混合搜索时,遇到 Elasticsearch 分词问题 。

一、遇到问题的现象描述
1.1 英文和特殊字符连在一起的的分词,比如 Special Feature Note for T972-SE.pdf
1.2 使用 ik_smart 会直接分词为 t972-se.pdf
1.3 使用 ik_max_word 会分词为:

img

img

二、希望达到的效果
2.1 要求分词为 t972 和 se,且不分词成单独 t
2.2 使用的 ik 的自定义字典, 将 - 作为单词, 只对 ik_max_word 起作用,对 ik_smart 无效
2.3 要求不能 搜 t 搜出来结果

三、我尝试的解决办法
3.1 我还使用了 字符过滤器 char_filter
3.2 处理了特殊字符,使用的自定义分词器为 my_analyzer,也有分出单个字符
3.3 T972-SE.pdf 把这个当做分隔符,横杠,也试过。
3.4 标准分词器不能对中文分词,也不支持大小写,所以只能用IK。

img

四、操作环境、软件版本
4.1 IK 与 ES,都是6.4.3
4.2 操作系统使用 Linux

五、麻烦看看,如何收费
5.1 我认可知识付费。
5.2 可以根据标准,提供收费方式。

  • 写回答

5条回答 默认 最新

  • 这是谁的博客? 后端领域优质创作者 2021-09-07 19:22
    关注
    PUT /test_analyzer
    {
      "settings": {
        "analysis": {
          "analyzer": {
            "test_analyzer": {
              "tokenizer": "ik_max_word",
              "char_filter": "patten_char_filter",
              "filter": "stop_filter"
            }
          },
          "char_filter": {
              "patten_char_filter": {
              "type" : "pattern_replace",
              "pattern" : "-",
              "replacement" : " "
            }
          },
          "filter": {
            "stop_filter": {
              "type"      : "stop",
              "stopwords" : ["t"]
            }
          }
        }
      }
    }
     
     
    GET /test_analyzer/_analyze
    {
      "analyzer": "test_analyzer", 
      "text": "Special Feature Note for T972-SE.pdf"
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 9月15日
  • 已采纳回答 9月7日
  • 赞助了问题酬金 9月6日
  • 修改了问题 9月6日
  • 展开全部

悬赏问题

  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿