gpt4 book ai didi

utf-8 - 切断 UTF 字符串中的最后一个 rune

转载 作者:IT王子 更新时间:2023-10-29 01:36:31 27 4
gpt4 key购买 nike

如何截断UTF字符串中的最后一个 rune ?这种方法显然是不正确的:

package main

import ("fmt"
"unicode/utf8")

func main() {
string := "你好"
length := utf8.RuneCountInString(string)
// how to cut off last rune in UTF string?
// this method is obviously incorrect:
withoutLastRune := string[0:length-1]
fmt.Println(withoutLastRune)
}

Playground

最佳答案

差不多,

utf8 包有一个函数来解码字符串中的最后一个 rune ,它也返回它的长度。把最后的字节数去掉,你就成功了:

str := "你好"
_, lastSize := utf8.DecodeLastRuneInString(str)
withoutLastRune := str[:len(str)-lastSize]
fmt.Println(withoutLastRune)

playground

关于utf-8 - 切断 UTF 字符串中的最后一个 rune ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30586467/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com