折腾词库,一个词库互转程序

简介:

我在之前写过一个小程序,用于实现QQ拼音、搜狗拼音、谷歌拼音和百度手机拼音输入法词库的互转,文章地址是:http://www.cnblogs.com/studyzy/archive/2009/12/31/1637030.html

本来我只是出于从将个人的词库从QQ拼音导入到搜狗拼音中,随手写的个小程序,结果哪知道原来大家都有和我类似的需求,希望实现各种输入法词库的相互转换;另外现在智能手机越来越多,在手机上的输入法也竞争相当激烈,QQ手机拼音、搜狗手机拼音、百度手机拼音等输入法都出来的,有些手机输入法也支持词库的导入导出,所以也用得到我这个词库互转程序。最近又有人提出,希望将搜狗的细胞词库和QQ的分类词库转换成其他输入法的词库,这个功能也很有必要,所以我打算继续折腾这个程序,将词库转换的范围继续扩大!

经过两天的努力,终于完成了我的词库转换小工具,将现有词库的以文本格式导出,然后选择源词库格式和新词库格式,单击“转换”按钮即可词库格式的转换。放出程序截图如图所示:

image

目前我这个转换小工具还只支持纯文本格式的词库,因为对于搜狗细胞词库(scel格式)和QQ分类词库(qpyd格式)我没有具体的解析这些词库的算法或者程序集,所以无法解析成文本并进行转换。如果大家谁知道怎么解析搜狗细胞词库和QQ分类词库的话还希望不吝赐教!

如果希望将搜狗细胞词库导入到谷歌拼音中,该怎么实现呢?首先需要到官方网站去下载txt格式的细胞词库,该词库中只有词条,没有拼音!选择该txt文件,然后选择“搜狗细胞词库Txt”作为转换源,以谷歌拼音作为目标格式即可!

image

对于没有拼音的文本词库,程序会找到每个字的拼音,自动生成带拼音的词库,这里面有一个问题是出现多音字怎么办?我在高级设置中给出了一个“忽略多音字”的选项,默认是选中的,所以会导致很多词的拼音是错误的,比如“音乐”会被拼写成“yin le”,因为乐是多音字,只取了其一个音“le”。如果取消了“忽略多音字”选项,那么所有的多音字的拼音就都会出现在词库中,形成词条中多音字的所有组合,如图所示:

image

本来1895个词条,经过多音字的组合,就变成了7597条!这样导致词库变得太大,而且输入法处理起来也困难,所以不建议使用。对于词条中多音字的处理不知道大家还有没有更好的办法能够获得一个词的准确拼音,不要将“音乐”变成“yin le”了。

另外我还设置了词条长度的筛选功能,将单个字的词条、长度大于指定长度的词条都筛选掉,不进行转换。

现在这个程序功能还很弱,只支持:百度手机、QQ手机、搜狗拼音、搜狗五笔、QQ拼音、谷歌拼音、搜狗细胞词库Txt,仍然有以下问题有待解决:

  • 如何解析搜狗细胞词库scel格式和QQ分类词库qpyd格式?
  • 如何获得QQ分类词库的Txt格式?
  • 如何获得一个词条的准确拼音?
  • 搜狗手机输入法好像不支持本地词库导入,电脑上的词库就没办法导入到其中了?
  • 支持更多的输入法类型的词库。

我已经将程序代码放到Google Code中,有兴趣的可以看看,地址:http://code.google.com/p/imewlconverter/

 

这里放出可执行文件,方便有同样需求的人来一起折腾词库,下载地址:/Files/studyzy/深蓝词库转换小工具-v1.0.zip

本文转自深蓝居博客园博客,原文链接:http://www.cnblogs.com/studyzy/archive/2010/03/02/1676774.html,如需转载请自行联系原作者

相关文章
|
9月前
|
机器学习/深度学习 存储 自然语言处理
Jieba分词模式详解、词库的添加与删除、自定义词库失败的处理
Jieba(结巴)是一个中文分词第三方库,它可以帮助我们将一段中文文本分成一个个独立的词语。Jieba具有以下特点: 简单易用:Jieba提供了简洁的API接口,易于使用和扩展。可以快速地实现中文分词功能。 高效准确:Jieba采用了基于前缀词典和动态规划算法的分词方法,能够高效准确地处理各种中文文本。 支持多种分词模式:Jieba提供了三种分词模式:精确模式、全模式和搜索引擎模式,可以根据不同的应用场景选择合适的模式。
Jieba分词模式详解、词库的添加与删除、自定义词库失败的处理
|
自然语言处理 开发工具 网络架构
自定义词库|学习笔记
快速学习自定义词库。
127 0
自定义词库|学习笔记
|
开发者
自定义词库 | 学习笔记
快速学习自定义词库
58 0
自定义词库 | 学习笔记
|
Java Android开发 数据格式
Android环境下hanlp汉字转拼音功能的使用介绍
    由于项目需要在Android手机设备上实现汉字转拼音功能(支持多音字),于是首先想到了Pinyin4j+多音字映射对照表的实现方案,并在项目中试用了一段时间,发现数据量大时,其耗时非常严重。后来寻找其他方案,在github上找到了HanLP开源库,其多音字转换速度非常快,但是没有针对Android平台进行适配,于是对代码进行了一些修改,终于可以在Android手机上运行。
1434 0
|
缓存 自然语言处理 Python
pyhanlp 停用词与用户自定义词典功能详解
关于停用词,我同样先给出了一个简单的例子,你可以使用这个例子来完成你所需要的功能。要注意的一点是,因为java中的类所返回的数据类型与Python不统一,所以当你使用不同的函数的时候,一定要先检查输出结果在Python中的类型,不然可能会出现意想不到的问题。
2342 0
|
前端开发
前端脚本!网站图片素材中文转英文
写网页的时候, 我们经常需要使用图片素材, 图片素材如果是中文名, 挂到服务器会会引发乱码, 我们需要将图片名称改为英文字符才可以使用 而起名是一个世界级难题, 为图片素材起英文名更是一件极其蛋疼的事 有些人英语不好, 直接用拼音命名, 而拼音闹出的笑话更是无法计量.
1092 0

热门文章

最新文章