douzou0073 2013-09-01 08:40
浏览 17
已采纳

将字符串切成字母

How to slice one string in Go language into array of string letters it contains?

For example, turn string "abc" into array "a", "b", "c".

  • 写回答

4条回答 默认 最新

  • donglisi8644 2013-09-01 08:49
    关注

    Use a conversion to runes, for example

    package main
    
    import "fmt"
    
    func main() {
            s := "Hello, 世界"
            for i, r := range s {
                    fmt.Printf("i%d r %c
    ", i, r)
            }
            fmt.Println("----")
            a := []rune(s)
            for i, r := range a {
                    fmt.Printf("i%d r %c
    ", i, r)
            }
    }
    

    Playground


    Output:

    i0 r H
    i1 r e
    i2 r l
    i3 r l
    i4 r o
    i5 r ,
    i6 r  
    i7 r 世
    i10 r 界
    ----
    i0 r H
    i1 r e
    i2 r l
    i3 r l
    i4 r o
    i5 r ,
    i6 r  
    i7 r 世
    i8 r 界
    

    From the link:

    Converting a value of a string type to a slice of runes type yields a slice containing the individual Unicode code points of the string. If the string is empty, the result is []rune(nil).

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?