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

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日
  • 展开全部

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!