開源 Go 項目推薦:將漢字轉拼音,竟然能帶聲調
作者:Go語言中文網
小學生學拼音,一個工具解決拼音問題。今天給大家推薦一個 Go 語言實現的漢字轉拼音工具:go-pinyin,這是根據國家頒布的漢語拼音方案實現的。
小學生學拼音,一個工具解決拼音問題。今天給大家推薦一個 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]
- }
責任編輯:未麗燕
來源:
今日頭條