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

如何在 Golang 中将全角数字字符转换为 Ascii?

如何在 Golang 中将全角数字字符转换为 Ascii?

Go
森栏 2022-01-17 10:57:37
如何将全角字符转换为 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)

}


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

添加回答

举报

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