Go 语言为字符串处理提供了丰富的功能。以下是处理字符串的一些常见方法和函数:
-
基本操作:
- 获取字符串长度:
len(str)
- 字符串连接:
str1 + str2
- 访问特定字符(字节):
str[index]
- 获取字符串长度:
-
字符串包 (
strings
包):- 检查字符串是否包含子串:
strings.Contains(str, substr)
- 字符串比较:
strings.Compare(str1, str2)
- 字符串计数:
strings.Count(str, substr)
- 字符串前缀和后缀检查:
strings.HasPrefix(str, prefix)
和strings.HasSuffix(str, suffix)
- 字符串索引:
strings.Index(str, substr)
和strings.LastIndex(str, substr)
- 字符串替换:
strings.Replace(str, old, new, n)
- 字符串分割:
strings.Split(str, sep)
- 字符串转换为大写或小写:
strings.ToUpper(str)
和strings.ToLower(str)
- 字符串修剪:
strings.Trim(str, cutset)
、strings.TrimSpace(str)
- 检查字符串是否包含子串:
-
字节切片与字符串间的转换:
- 转换字节切片为字符串:
string(byteSlice)
- 转换字符串为字节切片:
[]byte(str)
- 转换字节切片为字符串:
-
字符串格式化 (
fmt
包):- 格式化字符串:
fmt.Sprintf(formatString, args...)
- 打印格式化的字符串:
fmt.Printf(formatString, args...)
- 从字符串读取格式化的输入:
fmt.Sscanf(str, formatString, &vars...)
- 格式化字符串:
-
正则表达式 (
regexp
包):- 匹配字符串:
regexp.MatchString(pattern, str)
- 查找匹配的子串:
regexp.FindString(pattern, str)
- 替换匹配的子串:
regexp.ReplaceAllString(pattern, replacement)
- 匹配字符串:
-
多行字符串:
- 使用反引号(
`
)创建多行字符串。
- 使用反引号(
-
字符串转换 (
strconv
包):- 将字符串转换为基本数据类型:
strconv.Atoi(str)
、strconv.ParseBool(str)
、strconv.ParseFloat(str, bitSize)
等 - 将基本数据类型转换为字符串:
strconv.Itoa(i)
、strconv.FormatBool(b)
、strconv.FormatFloat(f, fmt, prec, bitSize)
等
- 将字符串转换为基本数据类型:
以下是一些上述方法的示例:
package main
import (
"fmt"
"strings"
)
func main() {
str := "Hello, World!"
// 使用 strings 包的方法
fmt.Println(strings.Contains(str, "World")) // true
fmt.Println(strings.Replace(str, "World", "Go", 1)) // Hello, Go!
fmt.Println(strings.Split(str, ",")) // [Hello World!]
// 字符串长度
fmt.Println(len(str)) // 13
// 字符串连接
newStr := str + " How are you?"
fmt.Println(newStr) // Hello, World! How are you?
}
这只是 Go 语言中字符串处理的一部分功能。更多详细的功能可以在官方文档中找到。
标签:语言,fmt,strconv,字符串,str,Go,strings From: https://www.cnblogs.com/tangjicheng/p/17620902.html