1.2.11 合并与分割字符串
一、使用Go语言合并字符串
Go语言
strings包中提供了一个名为Join()的函数,函数定义如下:func Join(elems []string, sep string) string备注:参数
elems:字符串数组;参数sep:分隔符示例:
func t1() { str := []string{"I", "Love", "Go", "Java"} res := strings.Join(str, "-") fmt.Println(res) }结果:I-Love-Go-Java
二、使用Go语言分割字符串
strings包提供了Split()、SplitN()、SplitAfter()、SplitAfterN()四个函数来处理正则分割字符串Split()函数的定义如下:func Split(s, sep string) []string备注:参数
s:为被正则分割的字符串;参数sep:分隔符SplitN()函数的定义如下func SplitN(s, sep string, n int) []string备注:参数
s:为被正则分割的字符串;参数sep:分隔符;参数n:控制分割的片数n如果为-1则不限制片数
如果匹配,则函数会返回一个字符串切片
SplitAfter()函数的定义如下func SplitAfter(s, sep string)SplitAfterN()函数的定义如下func SplitAfterN(s, sep string, n int) []string上述四个函数都是通过
sep参数对传入字符串参数s进行分割,返回类型为[]string,如果sep为空,则相当于分成一个UTF-8字符以上四个函数中,
Split(s, sep)和Split(s, sep, -1)等价;SplitAfter(s, sep)和SplitAfterN(s, sep, -1)等价示例
func t2() { s := "I-Love-Go-Java" res1 := strings.Split(s, "-") for i := range res1 { fmt.Println(res1[i]) } res2 := strings.SplitN(s, "-", 2) for i := range res2 { fmt.Println(res2[i]) } res3 := strings.SplitAfter(s, "-") for i := range res3 { fmt.Println(res3[i]) } res4 := strings.SplitAfterN(s, "-", 2) for i := range res4 { fmt.Println(res4[i]) } }结果:
I Love Go Java I Love-Go-Java I- Love- Go- Java I- Love-Go-Java
Last updated