Golang實現(xiàn)將中文轉(zhuǎn)化為拼音
導(dǎo)語:新用戶入職 創(chuàng)建一系列賬號比較麻煩,打算通過接口傳入姓名進(jìn)行初始化。想把姓名轉(zhuǎn)化成拼音。因為有些賬號即需要中文也需要英文。
官方demo 參考了github.com/mozillazg/go-pinyin
搜到github.com/Chain-Zhang/pinyin的資料多一點,但貌似不維護(hù)了。
package main import ( "fmt" "github.com/mozillazg/go-pinyin" ) func main() { hans := "中國人" // 默認(rèn) a := pinyin.NewArgs() fmt.Println(pinyin.Pinyin(hans, a)) // [[zhong] [guo] [ren]] // 包含聲調(diào) a.Style = pinyin.Tone fmt.Println(pinyin.Pinyin(hans, a)) // [[zhōng] [guó] [rén]] // 聲調(diào)用數(shù)字表示 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] }
我想要的是后期把中文傳入并轉(zhuǎn)換成拼音 類似于用戶名。
創(chuàng)建main.go
package main import ( "fmt" "github.com/mozillazg/go-pinyin" "strings" "reflect" "github.com/astaxie/beego" ) func main() { hans := "中國人" a := pinyin.LazyConvert(hans, nil) // [zhong guo ren] var test []string = []string{} for a, v := range a{ beego.Info(v) beego.Info(a) if a == 0 { test = append(test, v) } else { test = append(test, ",") test = append(test, v) } } beego.Info("處理1") beego.Info(test) // 通過這一條處理 strings.Trim result := strings.Trim(fmt.Sprint(test), "[]") // result := strings.Replace(strings.Trim(fmt.Sprint(test), "[]"), " ", ",", -1) beego.Info(result) beego.Info(reflect.TypeOf(result)) result2 := strings.Replace(result, " , ", "", -1) beego.Info(result2) // zhongguoren }
go get -u github.com/mozillazg/go-pinyin go run main.go
結(jié)果圖
到此這篇關(guān)于Golang實現(xiàn)將中文轉(zhuǎn)化為拼音的文章就介紹到這了,更多相關(guān)Golang中文轉(zhuǎn)拼音內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang進(jìn)程在docker中OOM后hang住問題解析
這篇文章主要介紹了golang進(jìn)程在docker中OOM后hang住問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10一個Pod調(diào)度失敗后重新觸發(fā)調(diào)度的所有情況分析
這篇文章主要為大家介紹了一個Pod調(diào)度失敗后重新觸發(fā)調(diào)度的所有情況分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04