内容简介:转载请注明出处:在一些的开发中,可能会遇到一些需要把中文汉字转成拼音的需求,在这里自己简单的用 golang 实现了一下中文转拼音的库。欢迎各位大佬前来指正。实现起来的话,也非常简单,是将所有的汉字对应的 rune码,对应上它的拼音,也即是,有一个这样的 map[rune]string, 其中 key 为汉字的 rune码,value 就是汉字的拼音了。这个 map 是通过文件来生成的。文件内容如下:
转载请注明出处: golang实现中文汉字转拼音
Golang
- 介绍
在一些的开发中,可能会遇到一些需要把中文汉字转成拼音的需求,在这里自己简单的用 golang 实现了一下中文转拼音的库。欢迎各位大佬前来指正。
2. 实现原理
实现起来的话,也非常简单,是将所有的汉字对应的 rune码,对应上它的拼音,也即是,有一个这样的 map[rune]string, 其中 key 为汉字的 rune码,value 就是汉字的拼音了。这个 map 是通过文件来生成的。文件内容如下:
3400=>qiū 3401=>tiàn 3404=>kuà 3405=>wǔ 3406=>yǐn 340C=>yí 3416=>xié 341C=>chóu
其中的拼音都是带声调的。不需要声调的话,可以替换成没有声调的字符。
3. 源码
4. 使用 demo
安装:
go get github.com/chain-zhang/pinyin
package main import( "fmt" "github.com/chain-zhang/pinyin" ) func main() { str, err := pinyin.New("我是中国人").Split("").Mode(InitialsInCapitals).Convert() if err != nil { // 错误处理 }else{ fmt.Println(str) } str, err = pinyin.New("我是中国人").Split(" ").Mode(pinyin.WithoutTone).Convert() if err != nil { // 错误处理 }else{ fmt.Println(str) } str, err = pinyin.New("我是中国人").Split("-").Mode(pinyin.Tone).Convert() if err != nil { // 错误处理 }else{ fmt.Println(str) } str, err = pinyin.New("我是中国人").Convert() if err != nil { // 错误处理 }else{ fmt.Println(str) } }
输出
WoShiZhongGuoRen wo shi zhong guo ren wǒ-shì-zhōng-guó-rén wo shi zhong guo ren
Mode 介绍
InitialsInCapitals WithoutTone Tone
Split 介绍
split 方法是两个汉字之间的分隔符.
完
转载请注明出处: golang实现中文汉字转拼音
以上所述就是小编给大家介绍的《golang实现中文汉字转拼音》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Windows Phone开发手记-WinRT下分组拼音的实现
- Windows Phone开发手记-WinRT下分组拼音的实现
- Windows Phone开发手记-WinRT下分组拼音的实现
- ES拼音前缀索引
- solr搜索配置拼音检索
- 语音识别语言模型和拼音字典文件制作
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
数据分析技术白皮书
伍海凤、刘鹏、杨佳静、马师慧Sara、李博、Shirley Song、Zinc、李晓艳 / 2016-8-11 / 0
关于数据分析技术白皮书(Analytics Book 中文版),主要内容围绕: 1. 分析(Analytics):网站分析 & APP分析 2. 谷歌分析工具的原理、部署与使用 3. 开源网站分析工具的原理、部署与使用 4. Log日志分析原理 5. 网站分析的维度与指标定义 6. 如何炼成为一个互联网数据分析师 请访问书的数据分析技术白皮书官网“免费”阅......一起来看看 《数据分析技术白皮书》 这本书的介绍吧!