请问ES的分词器能匹配人名吗

作者 饼饼 | 发布于2018年08月21日 | 阅读数:322

试了下IK分词器和ansj分词器,都不能很好的拆分人名
比如“张行成” ,要么拆成“张”,“行”,“成”三个词,要么就拆成“张行成”
我是想要这种效果,搜索“张”,“张行”,“行成”,“张行成” 这个关键词,都能匹配到这条记录

求大家帮忙,感谢!
已邀请:

rochy - rochy_he@jointsky

赞同来自: zyb1994111

可以使用 ngram 分词模式,ES 中有对应的分词器 
https://www.elastic.co/guide/e ... nizer
 
PUT my_index
{
"settings": {
"analysis": {
"analyzer": {
"name_analyzer": {
"tokenizer": "nm_tokenizer"
}
},
"tokenizer": {
"nm_tokenizer": {
"type": "ngram",
"min_gram": 1,
"max_gram": 5,
"token_chars": [
"letter"
]
}
}
}
}
}

POST my_index/_analyze
{
"analyzer": "name_analyzer",
"text": "张行成"
}

God_lockin

赞同来自:

目测这种组合需要添加词典

elasticStack - 90后it大数据男

赞同来自:

ik分词器不是有词库吗,更新词库呗

esbruce

赞同来自:

更新词库

要回复问题请先登录注册