今天我们继续哈,争取我们把strings包这个东西给弄完了,这已经也有两天没有好好更新了,所以这两天更新的比较多补充前两天的
(1)func Title(s string) string这个函数作用很简单,就是把输入的字符串首字母大写,参数是字符串返回的是字符串

1import (2    "fmt"3    "strings"4)56func main() {7    fmt.Println(strings.Title("hello word widuu write"))8}

(2)func ToLower(s string) string这个函数是把字符串转换成小写,当然都是副本哦

1import (2    "fmt"3    "strings"4)56func main() {7    fmt.Println(strings.ToLower("WIDUU")) //widuu8}

(3)func ToTitleSpecial(_case unicode.SpecialCase, s string) string该函数把s字符串里面的每个单词转化为标题体,但是调用的是unicode.SpecialCase的ToTitle方法

01import (02    "fmt"03    "strings"04    "unicode"05)0607func main() {08    var SC unicode.SpecialCase09    fmt.Println(strings.ToTitleSpecial(SC, "Gopher"))10    //GOPHER11}

(4)func ToUpper(s string) string该函数就是把所有的字符串都大写

1import (2    "fmt"3    "strings"4)56func main() {7    fmt.Println(strings.ToUpper("widuu")) //WIDUU8}

(5)func ToUpperSpecial(_case unicode.SpecialCase, s string) string该函数把s字符串里面的每个单词转化为大写,但是调用的是unicode.SpecialCase的ToUpper方法

01import (02    "fmt"03    "strings"04    "unicode"05)0607func main() {08    var SC unicode.SpecialCase09    fmt.Println(strings.ToUpperSpecial(SC, "Gopher"))10    //GOPHER11}

(6)func Trim(s string, cutset string) string这个函数大家估计就看的多了,这个函数是去除两边的自定义字符的

1import (2    "fmt"3    "strings"4)56func main() {7    fmt.Println(strings.Trim("&&&&&nihao&&&&", "&")) //nihao8}

(7)func TrimFunc(s string, f func(rune) bool) string该函数大家是不是看的多了,对就是自定义函数清楚,那我们自定义函数完成上边那个函数的效果吧

01import (02    "fmt"03    "strings"04)0506func main() {07    fmt.Println(strings.TrimFunc("&&&&nihao&&&&", func(r rune) bool {08        if r == '&' {09            return true10        }11        return false12    })) //nihao13}

(8)func TrimLeft(s string, cutset string) string该函数是删除左边的定义的字符

1import (2    "fmt"3    "strings"4)56func main() {7    fmt.Println(strings.TrimLeft("&widuu&", "&")) //widuu&8}

(9)func TrimLeftFunc(s string, f func(rune) bool) string这个你说我还用再多说吗?上边遇到这种类型的是不是多的吓人,写的都要吐了,好吧根据自定义函数来删除左边

01import (02    "fmt"03    "strings"04)0506func main() {07    fmt.Println(strings.TrimLeftFunc("&widuu&", func(r rune) bool {08        if r == '&' {09            return true10        }11        return false12    })) //  widuu&是不是跟上边的那个函数效果一样了13}

(10)func TrimPrefix(s, prefix string) string前边我们讲了HasPrefix判断前缀的,这个是去除前缀的,来我们see下

01import (02    "fmt"03    "strings"04)0506func main() {07    s := "widuu_xiaowei"08    if strings.HasPrefix(s, "widuu_") {09        fmt.Println(strings.TrimPrefix(s, "widuu_")) //xiaowei10        return11    }1213    fmt.Println(s)14}

(11)

1func TrimRight(s string, cutset string) string2func TrimRightFunc(s string, f func(rune) bool) string 跟上边的left一样,只是这个是右边而已

(12)func TrimSpace(s string) string,清楚文本里边的空白操作\r\n\t

1import (2    "fmt"3    "strings"4)56func main() {7    fmt.Println(strings.TrimSpace("\r\t\n widuu \t")) //widuu8}
func TrimSuffix(s, suffix string) string
01import (02    "fmt"03    "strings"04)0506func main() {07    s := "web_widuu"08    if strings.HasSuffix(s, "_widuu") {09        fmt.Println(strings.TrimSuffix(s, "_widuu")) //web10        return11    }12    fmt.Println(s)13