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才有一个中文字符 .

猜你喜欢

转载自blog.csdn.net/weixin_41767230/article/details/106080819