go字符串处理函数


常用的字符串处理函数:在对字符串进行处理时,需要先导入包"strings"
    (1)Join():字符串的拼接,将切片slice中的元素,通过'#'连接起来
        slice := []string{"aaa","bbb","ccc"}
        str := strings.Join(slice, "#")
        fmt.Println(str)
    (2)Split():字符串的分割,把str字符串以'#'分割,返回是切片[aa bb cc dd ee]
        str := "aa#bb#cc#dd#ee"
        slice := strings.Split(str,"#")
        fmt.Println(slice)

    (3)Contains():str2是否在str1中出现,返回值 bool类型
        str1 := "I love you"
        str2 := "love"
        b := strings.Contains(str1,str2)
    (4)Index():查找str2在str1中第一次出现的位置,找到返回对应的下标,找不到返回-1
        str1 := "I love you"
        str2 := "u"        
        i := strings.Index(str1,str2)
        fmt.Println(i)
    (5)Repeat():将一个字符串重复n次,最后返回重复的字符串
        str := "love"
        str1 := strings.Repeat(str,6)
        fmt.Println(str1)
    (6)Replace(str, old, new n):在str字符串中,把old字符串替换为new字符串,n表示替换的次数,小于0表示全部替换
        str := "不要跟我习习哈哈,严肃点,好好学习"
        str1 := strings.Replace(str,"习","*",2)
        fmt.Println(str1)
    (7)Trim():去除字符串str头部和尾部指定的字符串
        str := "====a===u=ok===="
        str1:= strings.Trim(str,"=")
        fmt.Println(str1)  打印结果:a===u=ok
    (8)Fields():去除字符串str头部和尾部的空格,再按照空格分割字符串,返回切片
        str := "    are you  ok    "
        // 一般用于统计单词个数
        slice := strings.Fields(str)
        fmt.Println(slice)  打印结果:[are you ok]

字符串转换成其他数据类型:GO语言也提供了字符串与其它类型之间相互转换的函数,相应的字符串转换函数都在包"strconv"
    (1)Format系列函数把其他类型的转换为字符串
        FormatBool():布尔值转字符串
            str1 := strconv.FormatBool(true)
        FormatInt():整形转字符串(n可以是:2,8,10,16,对应转换成二进制,八进制,十进制,十六进制所对应的字符串)
            str2 := strconv.FormatInt(120, n)
        FormatFloat():浮点型转字符串(f->打印方式,以小数方式;4->指保留小数点后位数;64->以float64处理)
            str3:= strconv.FormatFloat(3.14159, 'f', 4, 64)
        strconv.Itoa():将常量转成字符串
            str4 := strconv.Itoa(123)
        打印值:fmt.Println(str3)
        打印类型:fmt.Printf("%T\n",str3)
    (2)Parse 系列函数把字符串转换为其他类型
        ParseBool():字符串转布尔
            b,err := strconv.ParseBool("true")
                if err!=nil {
                    fmt.Println("类型转换出错")

                }else {
                    fmt.Println(b)
                    fmt.Printf("%T\n",b)
                }
        ParseInt():字符串转整型
            v,err := strconv.ParseInt("abc",16,64)
        ParseFloat():字符串转浮点型
            v,_ := strconv.ParseFloat("3.14159",64)
        strconv.Atoi():字符串转常量
            v,_:=strconv.Atoi("123")    
    (3)Append系列函数将布尔/整数/浮点型等转换为字符串后,添加到切片中
        slice := make([]byte, 0, 1024)
        slice = strconv.AppendBool(slice, false)
        slice = strconv.AppendInt(slice, 123, 2)
        slice = strconv.AppendFloat(slice, 3.14159, 'f', 4, 64)
        slice = strconv.AppendQuote(slice, "hello")
        fmt.Println(string(slice))
     

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页