首页 > go 语言:(字符串处理) 字段提取

go 语言:(字符串处理) 字段提取

在go语言中怎样取出一个字符串中的数字部分, 对于规则的数据类型,例如日志等,其都有固定的格式,怎样取出某一个部分呢?
例如:
var s = "MemTotal: 1001332 kB"

我想要其中的每一个字段,怎样提取呢?


对于这个需求,正则应该是最有效的方法了。


var s = "MemTotal: 1001332 kB"
var valid = regexp.MustCompile("[0-9]")
fmt.Println(valid.FindAllStringSubmatch(s, -1))

不管任何语言,对于字符串或者单个的字符的处理来说,一般有两种方法,一种是直接对字符串进行处理,另一种是通过正则表达式。
在go语言中,对于上诉的字符串,可以直接对字符串进行处理函数,即通过strings包,来对字符串处理;另一种通过正则表达式的库regexp来对字符串进行处理。


func GetFields (str string) []string {
     var sub = strings.Fields(str)
     return sub 
}

这里只写出了函数,请自行测试,谢谢。


试试正则表达式。

【热门文章】
【热门文章】