gpt4 book ai didi

string - 如何根据 rune 而不是 Go 中的字节获取子字符串索引?

转载 作者:IT王子 更新时间:2023-10-29 01:54:48 26 4
gpt4 key购买 nike

我在玩 Golang 时发现了这个问题。我可以使用以下代码来获取基于字节的索引:

strings.Index("您好你好", "你好")

我得到的是 6,它是基于字节计数的。

如果我们指望 rune (字符),我们应该得到 2,这正是我想要的。我怎样才能得到我想要的?

谢谢。

最佳答案

您可以使用 utf8.RuneCountInString()方法:

import (
"fmt"
"strings"
"unicode/utf8"
)

func main() {
input_string := "您好你好"
byte_index := strings.Index(input_string, "你好")
fmt.Println(utf8.RuneCountInString(input_string[:byte_index]))
}

关于string - 如何根据 rune 而不是 Go 中的字节获取子字符串索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39189365/

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