申明:本文只用做自己的学习记录
strings.Contains("test", "es") // 是否包含 true
strings.Count("test", "t") // 字符串出现字符的次数 2
strings.HasPrefix("test", "te") // 判断字符串首部 true
strings.HasSuffix("test", "st") // 判断字符串结尾 true
strings.Index("test", "e") // 查询字符串位置 1
strings.Join([]string{"a", "b"}, "-") // 字符串数组 连接 a-b
strings.Repeat("a", 5) // 重复一个字符串 aaaaa
strings.Replace("foo", "o", "0", -1) // 字符串替换 指定起始位置为小于0,则全部替换 f00
strings.Replace("foo", "o", "0", 1) // 字符串替换 指定起始位置1 f0o
strings.Split("a-b-c-d-e", "-") // 字符串切割 [a b c d e]
strings.ToLower("TEST") // 字符串 小写转换 test
strings.ToUpper("test") // 字符串 大写转换 TEST
strings.Trim("!!!!!I Love you!!!!!", "!") // 去除字符串首尾指定字符"I Love you"
strings.Fields(" I love you ! ") // 去除字符串的空格字符,并按照空格分割返回slice
//str为空字符:str := make([]byte, 0, 100)
// Append 系列函数将 其他类型 转换成 字符串 后,添加到现有的字节数组中
str = strconv.AppendInt(str, 123, 10) //int转换成string
fmt.Println(string(str)) //123
str = strconv.AppendFloat(str, 3.141592, 'f', 4, 64) // float转换成string,'f'换成'e'便是科学计数法
fmt.Println(string(str)) // 1233.1416
str = strconv.AppendBool(str, false) // <==> append(str, "false"...) // bool转换成string
fmt.Println(string(str)) // 1233.1416false
str = strconv.AppendQuote(str, "hello world") // 特殊符号转换string 包括双引号
fmt.Println(string(str)) // 1233.1416false"hello world"
str = strconv.AppendQuoteRune(str, '当') // 汉字转换string
fmt.Println(string(str)) // 1233.1416false"hello world"'当'
// Format 系列函数把 其他类型转 换成 字符串
a := strconv.FormatBool(true) // bool类型转换成字符串
fmt.Println(a) // true
b := strconv.FormatInt(10, 2) // 整数10转换成二进制的字符串
fmt.Println(b) // 1010
c := strconv.FormatUint(123, 10) // 无符号int类型转换成十进制的字符串
fmt.Println(c) // 123
d := strconv.Itoa(10) // 等价于:strconv.FormatInt(int64(i), 10)
fmt.Println(d) // 10
// Parse 系列函数把 字符串 转换为 其他类型
aa, err := strconv.ParseBool("false") // string转换bool
fmt.Println(aa) // false
bb, err := strconv.ParseFloat("123.23", 64) // string转换float
fmt.Println(bb) // 123.23
cc, err := strconv.ParseInt("1011", 2, 64) // string转换2进制int64
fmt.Println(cc) // 11
dd, err := strconv.ParseUint("12345", 10, 64) // string转换10进制无符号int64
fmt.Println(dd) // 12345
ee, err := strconv.Atoi("1023") // 等价于:ParseInt(s, 10, 0) // string转换10进制int
fmt.Println(ee) // 1023
string 不能直接和byte数组转换
eg:
string可以和byte的切片转换
string 转为[]byte
var str string = "test"
var data []byte = []byte(str)
byte转为string
var data [10]byte
byte[0] = 'T'
byte[1] = 'E'
var str string = string(data[:])