如何将全角字符转换为 golang 中的 ascii 字符。我的程序中的输入是全角数字,我需要对它们进行一些计算,所以我假设我必须编写一个如下所示的转换函数,在我开始映射字节之前,我想知道这是否确实在标准中可用去图书馆fullWidth:="123"expected := "123"func convert(input string) string {// body}expected == convert(fullWidth)
1 回答
12345678_0001
TA贡献1802条经验 获得超5个赞
您可以使用包width.Transformer的golang.org/x/text进行转换,但标准库没有此功能。x/text是许多具有较弱兼容性要求的官方子存储库之一(请参阅此处)。
例子:
package main
import (
"fmt"
"golang.org/x/text/width"
)
func main() {
s := "123"
n := width.Narrow.String(s)
fmt.Printf("%U: %s\n", []rune(s), s)
fmt.Printf("%U: %s\n", []rune(n), n)
}
- 1 回答
- 0 关注
- 284 浏览
添加回答
举报
0/150
提交
取消