Go语言中的字符串处理方法示例详解

2020-01-28 13:41:04于丽


strings.SplitAfterN("go-Js-JavaScript", "-", 2)
// 返回 ["go-", "Js-JavaScript"]

strings.SplitN(s, sep string, n int) []string

在分隔符 sep 分割字符串 s,使用 n 限定分割的元素数量,n<0全部子字符串,n>0最后一个子字符串包含余下内容,n==0返回nil。返回子字符串切片。


strings.SplitN("go-Js-JavaScript", "-", 2)
// 返回 ["go", "Js-JavaScript"]

strings.Title(s string) string

返回Title化的字符串。


strings.Title("hello Hank's go")
// 返回 "Hello Hank's Go"

strings.ToLower(s string) string

转换字符串 s 到小写。


strings.ToLower("Hank's Go Guide")
// 返回 "hank's go guide"

strings.ToLowerSpecial(c unicode.SpecialCase, s string) string

使用特定的规则转换字符串 s 到小写。


strings.ToLowerSpecial(unicode.TurkishCase, "Önnek İş")
// 返回 önnek iş

strings.ToTitle(s string) string

返回全部字符都Title化的字符串。


strings.Title("hello Hank's go")
// 返回 "HELLO HANK'S GO"

strings.ToTitleSpecial(c unicode.SpecialCase, s string) string

使用特定的规则将全部字符都Title化。


strings.ToTitleSpecial(unicode.TurkishCase, "dünyanın ilk borsa yapısı Aizonai kabul edilir")
// 返回 "DÜNYANIN İLK BORSA YAPISI AİZONAİ KABUL EDİLİR"

strings.ToUpper(s string) string

将字符串 s 中所有字符转换为大写。


strings.ToUpper("hello Hank's go")
// 返回 "HELLO HANK'S GO"

strings.ToUpperSpecial(c unicode.SpecialCase, s string) string

使用特定的规则将字符串 s 中所有字符转换为大写。


strings.ToUpperSpecial(unicode.TurkishCase, "örnek iş")
// 返回 "ÖRNEK İŞ"

strings.Trim(s string, cutset string) string

截取字符串 s 两端包裹的特定字符集 cutset。


strings.Trim(" user name  ", " ")
// 返回 "user name"

strings.TrimFunc(s string, f func(rune) bool) string

截取字符串 s 两端满足函数 f 的字符。


fn := func(c rune) bool {
 return strings.ContainsRune(",|/", c)
}
strings.TrimFunc("|/user name,/", fn)
// 返回 "user name"

strings.TrimLeft(s string, cutset string) string

截取字符串 s 左边包裹的特定字符集 cutset。


strings.TrimLeft(" user name  ", " ")
// 返回 "user name  "

strings.TrimLeftFunc(s string, f func(rune) bool) string

截取字符串 s 左边满足函数 f 的字符。