1. 统计字符串的长度(按字节统计)#
使用内置函数 len
可以直接统计字符串的字节长度:
1
2
| str := "hello"
fmt.Println(len(str)) // 输出: 5
|
2. 字符串遍历#
方式 1:for-range 键值循环
1
2
3
4
| str := "hello"
for index, char := range str {
fmt.Printf("字符=%c, 索引=%d\n", char, index)
}
|
方式 2:转换为 []rune
1
2
3
4
5
| str := "hello"
r := []rune(str)
for i := 0; i < len(r); i++ {
fmt.Printf("字符=%c\n", r[i])
}
|
3. 字符串转整数#
使用 strconv.Atoi
函数可以将字符串转换为整数:
1
2
3
4
5
6
| n, err := strconv.Atoi("66")
if err != nil {
fmt.Println("转换错误:", err)
} else {
fmt.Println("转换结果:", n)
}
|
4. 整数转字符串#
使用 strconv.Itoa
函数可以将整数转换为字符串:
1
2
| str := strconv.Itoa(6887)
fmt.Println("转换结果:", str)
|
5. 查找子串是否在指定的字符串中#
使用 strings.Contains
函数可以检查子串是否存在:
1
2
| result := strings.Contains("javaandgolang", "go")
fmt.Println("是否包含子串:", result) // 输出: true
|
6. 统计一个字符串中有几个指定的子串#
使用 strings.Count
函数可以统计子串出现的次数:
1
2
| count := strings.Count("javaandgolang", "a")
fmt.Println("子串出现次数:", count) // 输出: 3
|
7. 不区分大小写的字符串比较#
使用 strings.EqualFold
函数可以进行不区分大小写的比较:
1
2
| isEqual := strings.EqualFold("go", "Go")
fmt.Println("字符串是否相等:", isEqual) // 输出: true
|
8. 返回子串在字符串第一次出现的索引值#
使用 strings.Index
函数可以找到子串第一次出现的索引:
1
2
| index := strings.Index("javaandgolang", "a")
fmt.Println("子串第一次出现的索引:", index) // 输出: 1
|
9. 参考#
马士兵 Golang 工程师-字符串操作