go语言中字符串常用的函数

    科技2025-03-25  17

    package main import ( "fmt" "strconv" "strings" ) func main() { //1.统计字符串的长度 str := "张三"//一个汉字是三个字节 fmt.Println(len(str))//len是按字节返回,结果是9 //2.字符串的遍历,使用切片 []rune(str) str2 :=[]rune(str) for i := 0;i < len(str2);i++{ fmt.Printf("%c\n",str2[i]) } //4.字符串转整数,整数转字符串 str3,_ := strconv.Atoi("123") i := strconv.Itoa(123) fmt.Printf("str3 = %T\ti = %T\n",str3,i) //5.字符串转为[]byte切片 var bytes = []byte(str) fmt.Println(bytes)//输出的结果是码值 //6.[]byte转字符串 var str4 = string(bytes) fmt.Println(str4) //7.十进制转二,八,十六进制,base对应的进制,2,8,16 var str5 = strconv.FormatInt(123,16)//放回对应的字符串 fmt.Println(str5) //8.查找子串是否在指定的字符串中,返回值是bool var b = strings.Contains("123","3") fmt.Println(b) //9.统计一个字符串中有几个指定的字符串,返回值是int var s = strings.Count("sssbbbb","s") fmt.Println(s) //10.不区分大小写比较字符串 var t = strings.EqualFold("abc","ABC") fmt.Println(t)//true //11.返回一个子串在字符串中第一次出现的位置,没有则返回-1,注意按照字节寻找的,从0开始 var i2 int = strings.Index(str,"三") fmt.Println(i2) //12.返回一个子串在字符串中最后出现的位置,没有则返回-1,注意按照字节寻找的 var i3 int = strings.LastIndex(str,"张") fmt.Println(i3) //13.将指定的子串替换为另一个字符串,最后一个参数是替换几个 str = strings.Replace(str,"张","李",1) fmt.Println(str) //14.按照指定的字符进行分隔,拆分为一个字符串数组 var s1 []string = strings.Split("str,stb,stb",",") fmt.Println(s1[0]) //15.将字符串进行大小写的转换 strings.ToLower("ABC")//转为小写 strings.ToUpper("abc")//转为大写 //16.将字符串左右两边的空格去掉 strings.TrimSpace(" 张三 ") fmt.Println(strings.TrimSpace(" 张三 ")) //17去掉指定的字符串的特殊字符 strings.Trim("!张三!","!")//两边 strings.TrimRight("!张三!","!")//右边 strings.TrimLeft("!张三!","!")//左边 //18.判断是否以什么字符开头,什么结尾 strings.HasPrefix("张三","张")//true strings.HasSuffix("张三","三")//true fmt.Println(strings.HasPrefix("张三","张")) fmt.Println(strings.HasSuffix("张三","三")) }
    Processed: 0.008, SQL: 8