Rumah > Artikel > pembangunan bahagian belakang > golang menukar aksara Cina kepada pinyin
Dengan peningkatan rangkaian sosial dan enjin carian, orang ramai semakin bergantung pada input dan pemprosesan teks dalam kehidupan seharian mereka. Rentetan pinyin ialah cara biasa untuk menukar aksara Cina kepada audio. Ia membantu meningkatkan ketepatan penyuntingan dan carian teks. Artikel ini akan memperkenalkan cara menggunakan Golang untuk menulis program yang menukar aksara Cina kepada rentetan Pinyin.
1. Persediaan
Sebelum menulis program, kita perlu memasang modul github.com/mozillazg/go-pinyin
. Anda boleh memasangnya dengan menjalankan arahan berikut:
go get github.com/mozillazg/go-pinyin
Pustaka ini menyediakan API yang mudah yang boleh menukar aksara Cina kepada pinyin yang sepadan. Dalam contoh ini, kami akan menggunakan API untuk menukar aksara Cina kepada Pinyin.
2. Buat program
Seterusnya, kami akan mula menulis program untuk menukar aksara Cina kepada rentetan pinyin. Berikut ialah contoh program yang mengambil rentetan aksara Cina dan menukarkannya kepada rentetan pinyin yang sepadan.
package main import ( "fmt" "github.com/mozillazg/go-pinyin" ) func main() { hans := "中国" fmt.Println(pinyin.Convert(hans, nil)) }
Dalam kod di atas, kami mengimport pustaka go-pinyin
dan menggunakan kaedah Convert()
untuk menukar rentetan "China" kepada rentetan pinyin. Hasilnya ialah:
[zhōng guó]
Kod di atas juga menyediakan parameter "Pilihan" pilihan, yang digunakan untuk menentukan kaedah penukaran semasa penukaran. Contohnya, jika anda ingin menukar "中国" ke dalam bentuk angka Pinyin, jalankan kod berikut:
package main import ( "fmt" "github.com/mozillazg/go-pinyin" ) func main() { hans := "中国" convertor := pinyin.NewArgs() convertor.Style = pinyin.Tone2 fmt.Println(pinyin.Convert(hans, convertor)) }
Dalam kod di atas, kami menetapkan pilihan pinyin.Tone2
untuk menukar "中国" kepada angka bentuk Rentetan Pinyin. Hasilnya ialah:
[zhong1 guo2]
3. Program lengkap untuk menukar aksara Cina kepada Pinyin
Kini, kita boleh menulis program lengkap untuk menukar aksara Cina kepada Pinyin berdasarkan contoh program di atas. Berikut ialah atur cara yang lengkap:
package main import ( "fmt" "strings" "github.com/mozillazg/go-pinyin" ) func main() { str := "前途未卜" convertor := pinyin.NewArgs() convertor.Style = pinyin.Tone pinyinStr := make([]string, 0) for _, r := range str { pyArr := pinyin.Pinyin(string(r), convertor) if len(pyArr) > 0 { pinyinStr = append(pinyinStr, pyArr[0]) } else { pinyinStr = append(pinyinStr, string(r)) } } fmt.Println(strings.Join(pinyinStr, " ")) }
Dalam kod di atas, kami menggunakan gelung untuk memproses rentetan input, menukarkannya aksara demi aksara kepada rentetan Pinyin yang sepadan dan menyimpannya menjadi aksara dalam tatasusunan rentetan. Akhir sekali, kami menggunakan fungsi Join()
untuk menggabungkan semua rentetan menjadi satu rentetan.
Untuk menjalankan program di atas, laksanakan arahan berikut:
$ go run main.go
Hasilnya hendaklah:
qián tú wèi bǔ
IV gunakan Gunakan pustaka
untuk menulis program ringkas yang menukar aksara Cina kepada rentetan Pinyin. Selain itu, kami juga memperkenalkan cara menggunakan perpustakaan ini untuk menukar aksara Cina ke dalam format pinyin tertentu. Menggunakan teknik ini, anda boleh menambah sokongan untuk input bahasa Cina pada program anda dan meningkatkan ketepatan carian dan penyuntingan teksnya.Atas ialah kandungan terperinci golang menukar aksara Cina kepada pinyin. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!