转换方法:1、用Fields()按空格分割字符串转为数组,语法“arr := strings.Fields(s)”;2、用Split()按字符串分割字符串,语法“arr := strings.Split(s,sep)”;3、用FieldsFunc()按字符分割字符串,语法“arr := strings.FieldsFunc(s,f func(rune) bool)”。
本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。
Go语言中提供多种方法来分割字符串转为数组。且分割字符串可以分为:按空格分割、按字符串分割和按字符分割。
方法1:使用Fields()函数按空格分割字符串转为数组
arr := strings.Fields(s)
登录后复制
参数 | 描述 |
---|---|
s | 要分割的字符串。 |
返回值
-
返回分割后的字符串 数组。
说明
-
把字符串 s 按照空格分割后返回的字符串数组,保存在 变量 arr 中。
示例:
package main import ( "fmt" "strings" ) func main() { //使用 strings.Fields 函数,实现按空格分割字符串 strHaiCoder := "Hello HaiCoder" strArr := strings.Fields(strHaiCoder) fmt.Println("strArr =", strArr) }
登录后复制
方法2:使用Split()函数按字符串分割字符串
arr := strings.Split(s,sep)
登录后复制
参数 | 描述 |
---|---|
s | 要分割的字符串。 |
sep | 字符串的分割符。 |
返回值
-
返回分割后的字符串 数组。
说明
-
把字符串 s 按照字符串 sep 分割后返回的字符串数组,保存在变量 arr 中。
示例:
package main import ( "fmt" "strings" ) func main() { //使用 strings.Split 函数,实现按字符串分割字符串 strHaiCoder := "Hello,HaiCoder Hello,World" strArr := strings.Split(strHaiCoder, "Hello") fmt.Println("strArr =", strArr) }
登录后复制
方法3:使用FieldsFunc()函数按字符分割字符串
arr := strings.FieldsFunc(s,f func(rune) bool)
登录后复制
参数 | 描述 |
---|---|
s | 要分割的字符串。 |
f | 分割的函数。 |
返回值
-
返回分割后的字符串 数组。
说明
-
把字符串 s 按照字符串按照函数 f 进行分割,分割后返回的字符串数组,保存在变量 arr 中。
示例:
package main import ( "fmt" "strings" ) func checkSpiltRune(r rune)bool{ if r > 97{ return true } return false } func main() { //使用 strings.FieldsFunc 函数,实现按字符分割字符串 strHaiCoder := "Hello,HaiCoder,Hello,World" strArr := strings.FieldsFunc(strHaiCoder, checkSpiltRune) fmt.Println("strArr =", strArr) }
登录后复制
【