elasticsearch ik分词器:ik_smart和ik_max_word分词策略

介绍

提供了两种分词策略:ik_smart 和 ik_max_word

ik_smart

会将文本做最粗粒度的拆分

例如:中华人民共和国国歌 会被拆分为 中华人民共和国、国歌

测试:

get _analyze
{
  "analyzer":"ik_smart",
  "text":"中华人民共和国国歌"
}

执行结果:

{
  "tokens" : [
    {
      "token" : "中华人民共和国",
      "start_offset" : 0, // 起始偏移量
      "end_offset" : 7, // 结束偏移量
      "type" : "CN_WORD", // 分词类型,中文分词
      "position" : 0 // 位置
    },
    {
      "token" : "国歌",
      "start_offset" : 7,
      "end_offset" : 9,
      "type" : "CN_WORD",
      "position" : 1
    }
  ]
}

ik_max_word

会将文本做最细粒度的拆分

例如:中华人民共和国国歌 会被拆分为 中华人民共和国、中华人民、中华、华人、人民共和国、人民、人、民、共和国、共和、和、国国、国歌,会穷尽各种可能的组合

测试:

get _analyze
{
  "analyzer":"ik_max_word",
  "text":"中华人民共和国国歌"
}

执行结果:

{
  "tokens" : [
    {
      "token" : "中华人民共和国",
      "start_offset" : 0,
      "end_offset" : 7,
      "type" : "CN_WORD",
      "position" : 0
    },
    {
      "token" : "中华人民",
      "start_offset" : 0,
      "end_offset" : 4,
      "type" : "CN_WORD",
      "position" : 1
    },
    {
      "token" : "中华",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "CN_WORD",
      "position" : 2
    },
    {
      "token" : "华人",
      "start_offset" : 1,
      "end_offset" : 3,
      "type" : "CN_WORD",
      "position" : 3
    },
    {
      "token" : "人民共和国",
      "start_offset" : 2,
      "end_offset" : 7,
      "type" : "CN_WORD",
      "position" : 4
    },
    {
      "token" : "人民",
      "start_offset" : 2,
      "end_offset" : 4,
      "type" : "CN_WORD",
      "position" : 5
    },
    {
      "token" : "共和国",
      "start_offset" : 4,
      "end_offset" : 7,
      "type" : "CN_WORD",
      "position" : 6
    },
    {
      "token" : "共和",
      "start_offset" : 4,
      "end_offset" : 6,
      "type" : "CN_WORD",
      "position" : 7
    },
    {
      "token" : "国",
      "start_offset" : 6,
      "end_offset" : 7,
      "type" : "CN_CHAR",
      "position" : 8
    },
    {
      "token" : "国歌",
      "start_offset" : 7,
      "end_offset" : 9,
      "type" : "CN_WORD",
      "position" : 9
    }
  ]
}

原文出处:/show_1IX1p4f9zr3Z.html