我们实现汉字转拼音,需要结束代码包来完成,但是有个问题 ,针对多音字,会把排列组合的所有方式 全部打印出来.
比如 地区名,都是不需要多音字的,只有一个拼音发音是正确的.
下边 我们来实现 汉字转拼音的方法
-- 创建 拼音音节基础表
CREATE TABLE IF NOT EXISTS t_base_pinyin (
pinyin_code varchar(255) CHARACTER SET gbk NOT NULL,
pinyin_id int(11) NOT NULL,
PRIMARY KEY (pinyin_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- 初始化拼音音节
INSERT INTO t_base_pinyin (pinyin_code,pinyin_id)
VALUES ('a', 20319),('ai', 20317),('an', 20304),('ang', 20295),('ao', 20292),('ba', 20283),('bai', 20265),('ban', 20257),('bang', 20242),('bao', 20230),('bei', 20051),('ben', 20036),('beng', 20032),('bi', 20026),('bian', 20002),('biao', 19990),('bie', 19986),('bin', 19982),('bing', 19976),('bo', 19805),('bu', 19784),('ca', 19775),('cai', 19774),('can', 19763),('cang', 19756),('cao', 19751),('ce', 19746),('ceng', 19741),('cha', 19739),('chai', 19728),('chan', 19725),('chang', 19715),('chao', 19540),('che', 19531),('chen', 19525),('cheng', 19515),('chi', 19500),('chong', 19484),('chou', 19479),('chu', 19467),('chuai', 19289),('chuan', 19288),('chuang', 19281),
('chui', 19275),('chun', 19270),('chuo', 19263),('ci', 19261),('cong', 19249),('cou', 19243),('cu', 19242),('cuan', 19238),('cui', 19235),('cun', 19227),('cuo', 19224),('da', 19218),('dai', 19212),('dan', 19038),('dang', 19023),('dao', 19018),('de', 19006),('deng', 19003),('di', 18996),('dian', 18977),('diao', 18961),('die', 18952),('ding', 18783),('diu', 18774),('dong', 18773),('dou', 18763),('du', 18756),('duan', 18741),('dui', 18735),('dun', 18731),('duo', 18722),('e', 18710),('en', 18697),('er', 18696),('fa', 18526),('fan', 18518),('fang', 18501),('fei', 18490),('fen', 18478),('feng', 18463),('fo', 18448),('fou', 18447),('fu', 18446),('ga', 18239),('gai', 18237),
('gan', 18231),('gang', 18220),('g