美文网首页
golang-string

golang-string

作者: 爱吃豆包 | 来源:发表于2019-12-17 20:14 被阅读0次

    推荐 使用 strings 这个包处理字符串

    package main
    
    import (
        "fmt"
        "strings"
        "unicode/utf8"
    )
    
    func main()  {
    
        s := "Yes我爱中国!" // UTF-8编码
    
        // 输出的是 16 进制编码的总个数
        fmt.Println(len(s))
    
        // 遍历 16 进制编码
        for _, b := range []byte(s){
            fmt.Printf("%X ", b)
        }
    
        fmt.Println()
    
        // 遍历文字
        for i, ch := range s { // ch 就是 rune 类型
            fmt.Printf("(%d %X)",i ,ch)
        }
    
        fmt.Println()
    
        fmt.Println("s 字符总数:", utf8.RuneCountInString(s))
    
        /**
            输出每一个字符
                但是繁琐
         */
        bytes := []byte(s)
        for len(bytes) > 0 {
    
            // 转换成 rune 类型
            ch, size := utf8.DecodeRune(bytes)
            bytes = bytes[size:]
            // 输出 字符
            fmt.Printf("%c ", ch)
    
        }
    
        fmt.Println()
    
        /**
            输出每一个字符
                推荐使用
         */
        for i, ch := range []rune(s){
            fmt.Printf("(%d %c)", i, ch)
        }
    
        fmt.Println()
    
        // strings 操作包,有许多针对字符串的函数,推荐使用
        // 把英文转换为大写
        s1 := strings.ToUpper(s)
        fmt.Println(s1)
    
    }
    
    

    相关文章

      网友评论

          本文标题:golang-string

          本文链接:https://www.haomeiwen.com/subject/mnyenctx.html