Golang和UTF-8中的符文

时间:2017-04-15 19:33:26

标签: go

  1. "符文"意思?

  2. https://golang.org/pkg/unicode/utf8/#example_Valid为什么第一行的答案是正确的?

  3. 函数Valid只接受一个数组?

1 个答案:

答案 0 :(得分:5)

  1. runeint32类型的别名。当整数值表示代码点时,它旨在使程序清楚地了解情况。
  2. 因为字节序列0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x2c, 0x20, 0xe4, 0xb8, 0x96, 0xe7, 0x95, 0x8c(表示utf-8字符串Hello, 世界)是有效的UTF-8序列。
  3. 虽然utf8.Valid只接受字节数组(Go中没有重载,所以"只有"部分实际上是不相关的),有一些类似的函数来检查有效性:{ {3}}和utf8.ValidRune
  4. 我建议在Go博客上阅读一篇很棒的文章:utf8.ValidString,我相信在阅读它并进行一些实验后,你会得到关于Go的大部分与utf8相关的问题的答案。