Elasticsearch 检索多语种混合文档

2021-11-27 14:04:15 +08:00
 herosbd1
要检索的文档既有中文,也有英文,还有少量带变音符号的词(类似法语德语等其它欧洲语言)。希望检索具有中文分词,去除英文屈折变化与变音符号(比如查 abandon 可以匹配到 abandoned 和Äbandonéd )

如果是纯中文+英文,可以用这样的分析器:
"analyzer": {
"optimizeIK": {
"type": "custom",
"tokenizer": "ik_max_word",
"filter": [ "stemmer" ]
}
}

如果是纯英文加变音符号,可以用这样的分析器:
"analyzer": {
"optimizeIK": {
"type": "custom",
"tokenizer": "standard",
"filter": [ "stemmer", "asciifolding" ]
}
}

但如果三种类型都有,我就不知道要怎么办了。试了下面的写法,发现 asciifolding 过滤器没起作用。感觉是和 ik 冲突了?
"analyzer": {
"optimizeIK": {
"type": "custom",
"tokenizer": "ik_max_word",
"filter": [ "stemmer", "asciifolding" ]
}
}
1573 次点击
所在节点    Elasticsearch
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/818345

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX