Go--字符串函数
示例:
package main import ( "fmt" "strings" ) func main() { //strings.Contains(): 判断一个字符串是否包含另一个子字符串 str := "Hello, World!" substr := "World" if strings.Contains(str, substr) { //原始字符串、要查找的子字符串;如果子字符串存在于原始字符串中,则返回true,否则返回false,可以在函数前加!取反 fmt.Println("字符串包含子字符串") } else { fmt.Println("字符串不包含子字符串") } //strings.Split(): 分割字符串,要分割的字符串和分割符,返回一个字符串切片 str = "Hello, World!" sep := "," results := strings.Split(str, sep)[0] //以","分割后,再取数组切片的第一个元素值 fmt.Println(results) // 输出: Hello //strings.Join():将一个字符串切片分割成一个单独的字符串 strSlice := []string{"Hello", "World"} result := strings.Join(strSlice, " ") //以" "空格分割 fmt.Println(result) // 输出: Hello World //strings.Index():返回字符串中子字符串第一次出现的索引位置,如果没有找到则返回-1 str = "Hello, World!" index := strings.Index(str, "World") fmt.Println(index) // 输出: 7 //strings.Replace():将字符串中的旧子字符串替换为新子字符串,并返回新的字符串 str = "Hello, World!" newStr := strings.Replace(str, "World", "Go", -1) //原始字符串、被替换的子字符串、替换后的子字符串、可选的参数:表示替换操作的次数,如果省略或设置为-1,则将替换所有出现的被替换子字符串 fmt.Println(newStr) // 输出: Hello, Go! //strings.TrimSpace():去除字符串两端的空格 str = " Hello, World! " trimmedStr := strings.TrimSpace(str) fmt.Println(trimmedStr) // 输出: Hello, World! //strings.ToLower():将字符串转换为小写字母 str = "Hello, World!" lowerStr := strings.ToLower(str) fmt.Println(lowerStr) // 输出: hello, world! //strings.ToUpper():将字符串转换为大写字母 str = "Hello, World!" upperStr := strings.ToUpper(str) fmt.Println(upperStr) // 输出: HELLO, WORLD! }
补充
删除第一个或最后一个字符
//使用切片 //删除第一个字符 s := "Hello, World!" s = s[1:] //删除最后一个字符 s := "Hello, World!" s = s[:len(s)-1]