我找到了这个,https://groups.google.com/forum/#!topic/golang-nuts/YyKlLwuWt3w但据我所知,这些解决方案对我不起作用。
如果您使用将字符串视为 slice 的方法( str[:20] ),它会在字符中间断开,我们得到“ال�”。
编辑:我相信我可以编写一个函数并将其作为 3 的倍数执行,因为 rune 是 int32(32 位/(8 位/字节))。我首先要检查是否有 rune 。
Best Answer-推荐答案
只需先将其转换为 rune slice , slice ,然后将结果转换回:
string([]rune(str)[:20])
关于unicode - 如何从golang中的一串 rune 中获取子串?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/28718682/
|