为了账号安全,请及时绑定邮箱和手机立即绑定

如何使golang标准化具有多种编码方式的unicode字符串?

如何使golang标准化具有多种编码方式的unicode字符串?

Go
湖上湖 2022-08-24 10:36:30
可以用多种不同的方式对 Unicode 字符进行编码。这在创建软件时很烦人。例如,可以使用两个不同的符文序列对以下字符串进行编码:νῦν: 957 965 834 957 νῦν: 957 8166 957 golang中是否有一个函数可以标准化为一种编码方法?我假设像将965 834捣碎成8166一样。任何对此感兴趣的人的示例代码:package mainimport "fmt"func main() {    //r1 := "νῦν"    //r2 := "νῦν"    r1 := []rune{957, 965, 834, 957}    r2 := []rune{957, 8166, 957}    fmt.Printf("%s %d: ", string(r1), len(r1))    for i := 0; i < len(r1); i++ {        fmt.Printf("%d ", r1[i])    }    fmt.Printf("\n")    fmt.Printf("%s %d: ", string(r2), len(r2))    for i := 0; i < len(r2); i++ {        fmt.Printf("%d ", r2[i])    }    fmt.Printf("\n")}
查看完整描述

1 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

该软件包可用于:golang.org/x/text/unicode/norm


func fixUnicode(in string) string {

    return norm.NFC.String(in)

}


查看完整回答
反对 回复 2022-08-24
  • 1 回答
  • 0 关注
  • 73 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信