package main
import (
"fmt"
"strconv"
"strings"
)
func main() {
// 字符串长度
str1 := "Hello Go"
fmt.Println("str len=", len(str1))
// 字符串转整数
n, err := strconv.Atoi("123")
if err != nil {
fmt.Println("error:", err)
} else {
fmt.Println("n=", n)
}
// 整数转字符串
str2 := strconv.Itoa(123)
fmt.Println("s =", str2)
// 字符串转[]byte
bytes := []byte("hello go")
fmt.Printf("bytes=%v\n", bytes)
// byte转字符串
str3 := string([]byte{101, 102, 103})
fmt.Println("str3=%v\n", str3)
// 10进制转2,8,16进制
str4 := strconv.FormatInt(123,2)
fmt.Println("str4=%v\n", str4)
// 查找子串是否在指定的字符串中
b := strings.Contains("golang", "go")
fmt.Println("b=", b)
// 统计字符串有几个指定的子串
x := strings.Count("goo", "o")
fmt.Println("x=", x)
// 字符串比较,不区分大小写
str5 := strings.EqualFold("GOLANG", "golang")
fmt.Println("str5 =", str5)
// 返回子字符串第一次出现在字符串中的位置
str6 := strings.Index("golang", "ol")
fmt.Println("str6=", str6)
// 返回子串在字符串最后出现的位置
str7 := strings.LastIndex("golang", "g")
fmt.Println("str7=", str7)
// 将指定的字符串替换为另外字符串
str8 := strings.Replace("golang", "go", "go语言", -1)
fmt.Println("str8=", str8)
// 将字符串拆分成字符串数组
strArr := strings.Split("hello,golang", ",")
fmt.Println("str9=", strArr)
// 字符串大小写转换
str9 := strings.ToLower("GOLANG")
fmt.Println("str9=", str9)
str10 := strings.ToUpper("golang")
fmt.Println("str10=", str10)
// 将字符串两边的空格去掉
str11 := strings.TrimSpace(" Hello Golang ")
fmt.Println("str11=", str11)
// 将字符左右两边指定的字符去掉, Trim, TrimLeft, TrimRight
str12 := strings.Trim(",hello golang,", ",")
fmt.Println("str12=", str12)
// 判断字符串是否以指定的字符串开头
str13 := strings.HasPrefix("https://www.baidu.com/", "https")
str14 := strings.HasSuffix("hello.go",".go")
fmt.Println("str13=", str13)
fmt.Println("str14=", str14)
}