几种方法
一种是建立一个拼音对应的汉字map,进行查表。一种是利用汉字编码,根据不同的区域求出拼音。
第一种的原理类似新华字典的拼音查法,是对现实的简单建模。如果追求更高的性能就可以进行直接索引,这应该很好理解。
第二种解法要理解编码分区的知识,需要有一定的知识或者查看手册的能力。两种其实用了同样的算法,就是数据模型里面存储的数据有所不同。
查看代码
目前有web版的,和pc版的。我主要用c#实现了桌面版的,做了同音词的改进工作,可以简单进行配置。
从js改写到c#的版本,也并没有做很多处理,花了大概一天的功夫,只要思路清晰,设计的实现不是很难,但一些细节需要查询,如api的操作,多线程的处理等。
c#设计界面真的很不错,语法也比较接近java。
这些代码的实际用法是这样的,以前数据库字段的名称是拼音首字母,因为业务的关系用英文反而不容易识别,例如一些高级词汇做字段名。
其实也有很多需要改进的地方 ,易用性是最重要的,是值得需要思考的地方。针对特定的应用场景需要代码的改写。
去我的个人网站查看详情
在网站上可以进行简单试用,也可以查看桌面版的运行图片。