Golang字符串遍历
package main
import (
"fmt"
)
func main() {
v4 :='
床前明月光,
疑似地上霜.
举着望明月,
低头思故乡.
`
v6 := []rune(v4)
v7 := "故"
for k, v := range v6 {
if string(v) == v7{
fmt.Printf("找到字符---\"%s\",\n其索引为%d\n",v7,k)
fmt.Printf("%d--%c--%T\n", k, v, v)
}
}
}
将字符串先转换为[]rune即[]int32,然后再一个个遍历, 这样才能得到一个顺序索引对应一个字符,不会隔2个才到一个中文字符,因为中文三个编码对应一个字符,直接使用for k,v := range str来遍历, 会出现索引隔2才有一个中文字符 .
有疑问加站长微信联系(非本文作者)