在 GO 语言中,我们可以使用 strings 标准库对字符串进行一系列操作,strings 标准库在日常的编程过程中是十分常用的,这里向大家介绍strings标准库的使用,希望对你有帮助。
// 返回将s前后端所有cutset包含的utf-8码值都去掉的字符串。
func Trim(s string, cutset string) string
// 返回将s前后端所有空白(unicode.IsSpace指定)都去掉的字符串。
func TrimSpace(s string) string
// 返回将s前端所有cutset包含的utf-8码值都去掉的字符串。
func TrimLeft(s string, cutset string) string
// 返回将s后端所有cutset包含的utf-8码值都去掉的字符串。
func TrimRight(s string, cutset string) string
// 返回去除s可能的前缀prefix的字符串。
func TrimPrefix(s, prefix string) string
// 返回去除s可能的后缀suffix的字符串。
func TrimSuffix(s, suffix string) string
// 返回将字符串按照空白(unicode.IsSpace确定,可以是一到多个连续的空白字符)分割的多个字符串。
// 如果字符串全部是空白或者是空字符串的话,会返回空切片。
func Fields(s string) []string
// 用去掉s中出现的sep的方式进行分割,会分割到结尾,并返回生成的所有片段组成的切片(每一个sep都会进行一次切割,即使两个sep相邻,也会进行两次切割)。
// 如果sep为空字符,Split会将s切分成每一个unicode码值一个字符串。
func Split(s, sep string) []string
func Index(s, sep string) int
func IndexByte(s string, c byte) int
func IndexRune(s string, r rune) int
func IndexAny(s, chars string) int
func IndexFunc(s string, f func(rune) bool) int
func LastIndex(s, sep string) int
func LastIndexAny(s, chars string) int
func LastIndexFunc(s string, f func(rune) bool) int
// 返回s中每个单词的首字母都改为标题格式的字符串拷贝,相当于首字母大写
func Title(s string) string
// 返回将所有字母都转为对应的小写版本的拷贝。
func ToLower(s string) string
// 返回将所有字母都转为对应的大写版本的拷贝。
func ToUpper(s string) string
// 返回将所有字母都转为对应的标题版本的拷贝,会将所有字母大写
func ToTitle(s string) string
// 返回将s中前n个不重叠old子串都替换为new的新字符串,如果n<0会替换所有old子串。
func Replace(s, old, new string, n int) string
// 将s的每一个unicode码值r都替换为mapping(r),返回这些新码值组成的字符串拷贝。
// 如果mapping返回一个负值,将会丢弃该码值而不会被替换。(返回值中对应位置将没有码值)
func Map(mapping func(rune) rune, s string) string
func Repeat(s string, count int) string
func Join(a []string, sep string) string
func ContainsRune(s string, r rune) bool
func ContainsAny(s, chars string) bool
func Count(s, sep string) int
package main
import (
"fmt"
"strings"
)
func main() {
str := `Hello World
`
fmt.Println(str)
// 方法一
fmt.Println(strings.TrimRight(str, "\n"))
// 方法二
fmt.Println(strings.TrimSpace(str))
// 方法三
fmt.Println(strings.Trim(str, "\n"))
// 方法四
fmt.Println(strings.Replace(str, "\n", "", -1))
}
package main
import (
"fmt"
"strings"
)
func main() {
str := `Hello World`
// 方法一
fmt.Println(strings.ToTitle(str))
// 方法二
fmt.Println(strings.ToUpper(str))
}
package main
import (
"fmt"
"strings"
)
func main() {
str := `root:x:0:0:root:/root:/bin/bash`
// 方法一
fmt.Println(strings.Split(str, ":"))
}
package main
import (
"fmt"
"strings"
)
func main() {
str := ` Hello World randow_w1 `
// 方法一
fmt.Println(strings.Replace(str, "randow_w1", "everyone", -1))
}
package main
import (
"fmt"
"strings"
)
func main() {
str := ` Hello World `
fmt.Println(str)
// 方法一
fmt.Println(strings.Trim(str, " "))
// 方法二
fmt.Println(strings.TrimSpace(str))
// 方法三
fmt.Println(strings.TrimRight(str, " ")) // 去除右边空格
// 方法四
fmt.Println(strings.TrimLeft(str, " ")) // 去除左边空格
}
package main
import (
"fmt"
"strings"
)
func main() {
books := []string{"Math", "Chinese", "Science", "English"}
// 方法一
fmt.Println(strings.Join(books, " "))
}