文章目录
-
- 【len】返回 v 的长度
- 【[]rune】处理字符串中含有中文时乱码的问题
- 【Atoi】将字符串转为整数
- 【Itoa】将整数转为字符串
- 【[]byte】将字符串转为[]byte
- 【string】将[]byte转为字符串
- 【FormatInt】返回i的base进制的字符串表示
- 【Contains】判断字符串s是否包含子串substr
- 【Count】返回字符串s中有几个不重复的sep子串
- 【EqualFold】判断两个utf-8编码字符串是否相同
- 【Index】返回子串sep在字符串s中第一次出现的位置,不存在则返回-1
- 【LastIndex】返回子串sep在字符串s中最后一次出现的位置,不存在则返回-1
- 【Replace】返回将s中前n个不重叠oldV子串都替换为newV的新字符串,如果n<0会替换所有old子串
- 【Split】用去掉s中出现的sep的方式进行分割,会分割到结尾,并返回生成的所有片段组成的切片
- 【ToLower】返回将所有字母都转为对应的小写版本的拷贝
- 【ToUpper】返回将所有字母都转为对应的大写版本的拷贝
- 【TrimSpace】返回将s前后端所有空白(unicode.IsSpace指定)都去掉的字符串
- 【Trim】返回将s前后端所有cutset包含的utf-8码值都去掉的字符串
- 【TrimLeft】返回将s前端所有cutset包含的utf-8码值都去掉的字符串
- 【TrimRight】返回将s后端所有cutset包含的utf-8码值都去掉的字符串
- 【HasPrefix】判断s是否有前缀字符串prefix
- 【HasSuffix】判断s是否有后缀字符串suffix
【len】返回 v 的长度
func len(v Type) int
内建函数len返回 v 的长度,这取决于具体类型:
- 数组:v中元素的数量
- 数组指针:*v中元素的数量(v为nil时panic)
- 切片、映射:v中元素的数量;若v为nil,len(v)即为零
- 字符串:v中字节的数量
- 通道:通道缓存中队列(未读取)元素的数量;若v为 nil,len(v)即为零
案例演示:
package main
import "fmt"
func main() {
var str = "Hello世界"
fmt.Println(len(str)) // 11
}
【[]rune】处理字符串中含有中文时乱码的问题
案例演示:
package main
import "fmt"
func main() {
str2 := "Hello世界"
str := []rune(str2)
for i := 0; i < len(str); i++ {
fmt.Printf("str[%v]=%c ", i, str[i])
}
}
// str[0]=H str[1]=e str[2]=l str[3]=l str[4]=o str[5]=世 str[6]=界
【Atoi】将字符串转为整数
func Atoi(s string) (i int, err error)
Atoi是ParseInt(s, 10, 0)的简写
案例演示:
package main
import (
"fmt"
"strconv"
)
func main() {
str := "123456"
n, err := strconv.Atoi(str)
if err != nil {
return
} else {
fmt.Println(n) // 123456
}
}
【Itoa】将整数转为字符串
func Itoa(i int) string
Itoa是FormatInt(i, 10)的简写
案例演示:
package main
import (
"fmt"
"strconv"
)
func main() {
num := 123456
str := strconv.Itoa(num)
fmt.Println(str) // 123456
}
【[]byte】将字符串转为[]byte
案例演示:
package main
import "fmt"
func main() {
var str = "abc"
var by = []byte(str)
fmt.Println(by) // [97 98 99]
}
【string】将[]byte转为字符串
案例演示: