疲劳是最舒适的枕头,努力工作吧。

请教关于粤语拼音的一些问题

Elasticsearch | 作者 yeziblo | 发布于2019年08月23日 | 阅读数:1978

各位伙伴们好,我的情景如下:

客户需要实现 简、繁、汉语拼音和粤语拼音可以互查的一个功能。

简、繁很简单,我使用繁简转换插件,在charfilter阶段,就将所有繁体转换为简体,之后使用ik切词,然后查询的analyzer也用同一套,这样就实现了无论繁体还是简体都可以查询到数据。

至于汉语拼音检索,我也使用了pinyin分词器,实测效果也是比较满意的。

但是粤语拼音我就纠结了……首先我不知道粤语拼音是个啥,然后ES好像也没有粤语拼音插件……

我的初步构思是,将粤语拼音这一步和汉语拼音放到一起,建立一个同义词表,使用pinyin分词器进行分词,这样当我索引“刘德华”三个字的时候,倒排索引中不但存储了“刘德华”和“liu de hua”,还存储了粤语拼音的“lau tak fa”,这样便可以真正意义上实现粤语拼音的查询。

想得很美,但是当我开始创建模板的时候,就报错了。

因为pinyin分词器读取了我的同义词表,比如下面这行:
de, tak
对于第一个de,拼音分词器可以解析,但是对于tak,拼音分词器就解析不了了,毕竟tak并不是汉语拼音,因此在构建模板阶段,就直接报错退出了。

所以我想请教下各位小伙伴,我可不可以不让解析器去解析同义词表的内容呢?就只是单纯的把de和tak做个对应。

或者小伙伴们有没有其他的、更适合的解决方案呢?

快周末了,祝大家周末愉快吧~~~
已邀请:

要回复问题请先登录注册