Golang中使用不定数量空格分割字符串的方法
使用 strings.Fields 函数
strings.Fields 函数接受一个字符串类型的参数,使用空格及多个连续的空格将字符串进行分割,返回一个字符串切片,正好满足了我们的需求。使用示例如下:
package main
import (
"fmt"
"strings"
)
func main() {
str := "欢迎来到路多辛的博客 所思所想 很棒"
s := strings.Fields(str)
fmt.Println(s)
}运行看下效果:
$ go run main.go
[欢迎来到路多辛的博客 所思所想 很棒]
可以看出 str 中的子串虽然被数量不等的空格隔开,使用strings.Fields 函数处理后得到了一个字符串类型的切片,字符串被完美分割。
使用正则表达式
首先看下示例代码:
package main
import (
"fmt"
"regexp"
)
func main() {
str := "欢迎来到路多辛的博客 所思所想 很棒"
reg := regexp.MustCompile(`\s+`)
result := reg.Split(str, -1)
fmt.Println(result)
}运行看下效果:
$ go run main.go
[欢迎来到路多辛的博客 所思所想 很棒]
得到了和上个示例一样的数据,首先使用 regexp.MustCompile 函数创建一个正则表达式,用于匹配一个或多个空格(\s+ 表示匹配至少一个空格字符)。然后使用 reg.Split 方法对字符串进行分割,第二个参数 -1 表示返回所有子串。
到此这篇关于Golang中使用不定数量空格分割字符串的方法的文章就介绍到这了,更多相关Golang空格分割字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
理解Golang中的数组(array)、切片(slice)和map
这篇文章主要介绍了理解Golang中的数组(array)、切片(slice)和map,本文先是给出代码,然后一一分解,并给出一张内图加深理解,需要的朋友可以参考下2014-10-10
详解GO语言中[]byte与string的两种转换方式和底层实现
这篇文章主要为大家详细介绍了GO语言中[]byte与string的两种转换方式和底层实现的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以参考下2024-03-03


最新评论