Unicode Go中是否有与wcwidth()函数等效的函数?
POSIX函数Unicode Go中是否有与wcwidth()函数等效的函数?,unicode,go,terminal,rune,Unicode,Go,Terminal,Rune,POSIX函数wcwidth()。例如,wcwidth(L'A')返回1,wcwidth(L'A')字')返回2,等等。还有一个函数wcswidth(),用于计算整个字符串的宽度。如果存在组合重音,这将非常有用 Go标准库或补充库中是否存在类似的函数?如果不存在,是否有一种简单的方法使某些函数足够相似 Go标准库或补充库中是否存在类似功能 我相信这方面最受欢迎的图书馆是 例如: package main import ( "github.com/mattn/go-runewidth" )
wcwidth()。例如,wcwidth(L'A')
返回1
,wcwidth(L'A')字')
返回2
,等等。还有一个函数wcswidth()
,用于计算整个字符串的宽度。如果存在组合重音,这将非常有用
Go标准库或补充库中是否存在类似的函数?如果不存在,是否有一种简单的方法使某些函数足够相似
Go标准库或补充库中是否存在类似功能
我相信这方面最受欢迎的图书馆是
例如:
package main
import (
"github.com/mattn/go-runewidth"
)
func main() {
println(runewidth.StringWidth("A")) // prints 1
println(runewidth.StringWidth("字")) // prints 2
}
经过广泛测试后,我可以确认此库满足我的需要。谢谢!您可能还对该包感兴趣,它是的一部分。还有一个(可能)相关的Go项目。@DaveC啊!那一定是新的。也许这个包的存在是我提交的关于缺少这些函数的错误的结果?我不认为它提供了相同的功能,但是,它可能只是因为它的相关而感兴趣。@DaveC它完全像wcwidth一样,根据term上的大小对字符进行分类电子设备。