概述
package main
import (
“fmt”
“strconv”
“strings”
)
func main(){
/*
说明:字符串在我们程序开发中,使用的时非常多的,常用的函数需要同学们掌握【带看手册或者官方编程指南】:
1)统计字符串的长度,按字节len(str)
2)字符串便利,同时处理有中文的问题r := []rune(str)
3)字符串转整数:n,err := strconv.Atol(“12”)
4)整数转字符串 str = strconv.Itoa(12345)
5)字符串转【】byte:var byte = []byte("hello go")
6)[]byte转字符串:str = string([]byte{97,98,99})
7)10进制转2,8,16进制:str = strconv.Formatln(123,2)//2->8,16
8)查找字串是否在制定的字符串中:strings.Contains("seafood","foo")//true
9)统计一个字符串有几个制定的字串;strings.Count["ceheese","e")//4
10)不区分大小写的字符串比较(==时区分字母大小写的);fmt.Println(strings.EqualFold("abc","abc"))//true
11)返回字串在字符串第一次出现的index值,如果没有返回-1;strings.index("NLT_abc","abc")
*/
//统计字符串的长度,按字节len(str)
golang的编码统一为utf-8(ascii的字符(字母和数字)占一个字节,汉字占用3个字节)
str := "hello北"
fmt.Println("str len=",len(str))//r
//2)字符串遍历,同时处理有中文的问题r = 【】rune(str)
//
str2 := "hello北京"
//字符串遍历,同时处理有中文问题r := []rune(str)
r := []rune(str2)//str2=[]rune(str2)
for i :=0; i<len(r);i++{
fmt.Printf("字符=%cn",str2[i])
}
//3)字符串转整数:n,err =strconv.Atoa("12")
n,err := strconv.Atoi("123")
if err != nil {
fmt.Println("转换错误", err)
}else{
fmt.Println("转成结果是",n)
}
//4)整数转字符串str = strconv.Itoa(123456)
str = strconv.Itoa(12345)
fmt.Printf("str%v,str=%Tn",str,str)
//5)字符串转【】byte:var bytes = []byte("hello go")
var bytes =[]byte("hello go")
fmt.Println("bytes=%vn",bytes)
//6)[]byte转字符串:str=string([]byte{97,98,99})
str = string([]byte{97,98,99})
fmt.Printf("str=%vn,str")
//7)10进制转2、8、16进制;str = strconv FomaLnt(123,2)//2->8.16
str = strconv.FormatInt(123,2)
fmt.Printf("123对应的二进制时=%vn",str)
str = strconv.FormatInt(123,16)
fmt.Printf("123对应的16进制是=%vn",str)
//8)查找子串是否在指定的字符串:strings Contains("seafood","foo")//true
b := strings.Contains("seafood","mary")//("seafood","food")
fmt.Printf("b=%vn",b)
//9)统计一个字符串有几个指定的字串;strings.Count("ceheese"."e")//4
num := strings.Count("ceheese","seu")
fmt.Printf("num=%vn",num)
//10)不区分大小写的字符串比较(==是区分字母大小写的);fmt.Println(strings EqualFold("abc","Abc"))//true
b = strings.EqualFold("abc","Abc")
fmt.Printf("b=%vn",b)//true
fmt.Println("结果","abc"=="Abc")//false//区分字母大小写
//11)返回字串在字符串第一次出现的index值,如果没有返回-1:strings index("NLT_abc","abc")//4
index := strings.Index("NLT_abc","abc")//4
fmt.Printf("index=%vn",index)
//不缺分大小写的字符串比较(==是区分字母大小写的);fmt.Println(strings EqualFold("abc","Abc"))//true
//返回字串在字符串第一次出现的index值,如果没有返回-1;strings Index("Nlt_abc","abc")//4
}
最后
以上就是专注小海豚为你收集整理的Go字符串函数详解的全部内容,希望文章能够帮你解决Go字符串函数详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复