小学生学拼音,一个工具解决拼音问题。今天给大家推荐一个 Go 语言实现的汉字转拼音工具:go-pinyin,这是根据国家颁布的汉语拼音方案实现的。
项目地址:https://github.com/mozillazg/go-pinyin,Star 数:721。
该项目可以当作工具使用,也可以作为 Go 语言库使用。
安装工具:
- $ go get -u github.com/mozillazg/go-pinyin/cmd/pinyin
然后执行:
- $ pinyin 欧盆索思
- ōu pén suǒ sī
酷酷的。
作为包使用示例如下:
- package main
- import (
- "fmt"
- "github.com/mozillazg/go-pinyin"
- )
- func main() {
- hans := "中国人"
- // 默认
- a := pinyin.NewArgs()
- fmt.Println(pinyin.Pinyin(hans, a))
- // [[zhong] [guo] [ren]]
- // 包含声调
- a.Style = pinyin.Tone
- fmt.Println(pinyin.Pinyin(hans, a))
- // [[zhōng] [guó] [rén]]
- // 声调用数字表示
- a.Style = pinyin.Tone2
- fmt.Println(pinyin.Pinyin(hans, a))
- // [[zho1ng] [guo2] [re2n]]
- // 开启多音字模式
- a = pinyin.NewArgs()
- a.Heteronym = true
- fmt.Println(pinyin.Pinyin(hans, a))
- // [[zhong zhong] [guo] [ren]]
- a.Style = pinyin.Tone2
- fmt.Println(pinyin.Pinyin(hans, a))
- // [[zho1ng zho4ng] [guo2] [re2n]]
- fmt.Println(pinyin.LazyPinyin(hans, pinyin.NewArgs()))
- // [zhong guo ren]
- fmt.Println(pinyin.Convert(hans, nil))
- // [[zhong] [guo] [ren]]
- fmt.Println(pinyin.LazyConvert(hans, nil))
- // [zhong guo ren]
- }