当前位置:编程学习 > C#/ASP.NET >>

求判断字符串是否是拼音的成熟算法

给定一个字符串如qiaodang, shuangyue等,用算法判断其是否是拼音或者拼音组合,什么语言都行,重点讲算法的实现:

给定一个连续的只包含字母的字符串如guangangei,可拆分成(guang, an, gei)符合 ,(guan, gang, ei) ei不能成字不符合,(guan, gan, gei)符合,(gu, ang, an, gei)符合......等多种组合,只要其中有1个组合里的子集全部符合拼音组合规则如(guan, gan, gei),就判定这个字符串是拼音字符串;如果拆分之后的组合没有1个符合拼音规则,如字符串hello,那么判定此字符串不是拼音字符串。
个人猜测这个算法需要考虑字母前后的拼音匹配(拼音匹配模型),推导算法(如正向最大推导),失败后的回退(如guang, ang, ei失败后回退重新拆分guan,gang,ei,失败再重新拆分guan,gan,gei成功)等。
因需求比较急,算法实现有很多细节需考虑和测试,希望有达人分享已实现的算法,不胜感激。 拼音字符串判断 拼音算法 --------------------编程问答-------------------- 拼音总共组合就几百,了不起也就一千多, 放在一个字典里当常量去遍历就完了.


很多时候最笨的办法是最好的办法.

--------------------编程问答-------------------- 从纯字母字符串中分析拼音的函数分享 http://www.coderbolg.com/content/139.html
楼主去研究这个代码吧  看看怎么样 --------------------编程问答-------------------- 我个人认为,可以:
像#1所说的简历拼音字典,在此基础上,考虑拼音规则对字符串进行判断 --------------------编程问答-------------------- 从语法分析的角度看,这里面存在二义文法,不要以为最大左结合就是正确的了,比如xian,到底是xi an还是xian 还是xia n? --------------------编程问答-------------------- 这个类似分词算法。需要结合上下文去判断。
补充:.NET技术 ,  其他语言
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,