elasticsearch6数字和字母组合无法匹配到结果

java集成的es。用的elasticsearch6版本,并且安装了ik分词,用的ik_smart。但像VP200这种关键词却无法匹配到结果?是什么原因?

DSL贴一下看看

添加自定义分词,有些词不在默认词库

  1. 个人建议在创建mapping时,你存放VP200这个字段的类型不建议用ik_smart,而是ik_max_word,搜索时用ik_smart
  2. 检查你的语法,检查你的index是不是没错
  3. 搜索时请将如果指定了operator为AND,请改为OR,这样条件宽松些
  4. 先用如下的DSL看看返回的结果里面你这个VP200会切成什么terms,如果返回的token们没有你搜索的字,作为一个最小的terms,铁定搜不到
GET _analyze
{
  "analyzer": "ik_max_word", #这里填VP200的mapping里用的分词器
  "text": "VP200"
}

希望帮的到你