开发者

Golang实现将中文转化为拼音

导语:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进开发者_JAVA开发行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英文。

官方demo 参考了github.com/mozillazg/go-pinyin

搜到github.com/Chain-Zhang/pinyin的资料多一点,但貌似不维护了。

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 www.devze.com= pinyin.Tone
	fmt.Println(pinyin.Pinyin(hans, a))
	// [[zhng] [gu] [rn]]

	// 声调用数字表示
	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.phpPrintln(piYNUYaWnyin.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]
}

我想要的是后期把中文传入并转换成拼音 类似于用户名。

创建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)
		}

	}
YNUYaW        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

结果图

Golang实现将中文转化为拼音

到此这篇关于golang实现将中文转化为拼音的文章就介绍到这了,更多相关Golang中文转拼音内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜