如何解码包含反斜杠编码的 Unicode 字符的字符串?

huangapple go评论92阅读模式
英文:

How to decode a string containing backslash-encoded Unicode characters?

问题

我可以帮你翻译以下内容:

我有一个存储为 a 的字符串:

a := `M\u00fcnchen`
fmt.Println(a)  // 输出"M\u00fcnchen"
b := "M\u00fcnchen"
fmt.Println(b)  // 输出"München"

有没有办法将 a 转换为 b

英文:

I have a string stored as a:

a := `M\u00fcnchen`
fmt.Println(a)  // prints "M\u00fcnchen"
b := "M\u00fcnchen"
fmt.Println(b)  // prints "München"

Is there a way I can convert a into b ?

答案1

得分: 11

你可以使用strconv.Unquote来实现这个功能:

u := `M\u00fcnchen`
s, err := strconv.Unquote(`"` + u + `"`)
if err != nil {
    // 处理错误
}
fmt.Printf("%v\n", s)

输出结果为:

München
英文:

You can use strconv.Unquote for this:

u := `M\u00fcnchen`
s, err := strconv.Unquote(`"` + u + `"`)
if err != nil {
	// ..
}
fmt.Printf("%v\n", s)

Outputs:

München

huangapple
  • 本文由 发表于 2016年2月20日 12:26:25
  • 转载请务必保留本文链接:https://go.coder-hub.com/35519106.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定