我想将字符串 xxxxx:yyyyy:zzz.aaa.bbb.cc:dd:ee:ff 解析为 Go 中的结构体,如何使用多个分隔符 ':' 和 '.' 来完成此操作。
Edit:
我想将字符串“xxxxx:yyyyy:zzz.aaa.bbb.cc:dd”拆分为以下结构类型
type Target struct {
Service string
Type string
Domain string
Plan string
Host string
Region string
Other string
}
So that
Service = xxxxx
Type = yyyyy
Domain = zzzz
Plan = aaa
Host = bbb
Region = cc
Other = dd
您可以使用
strings.FieldsFunc(input, Split)
试试围棋游乐场 https://play.golang.org/p/k3MY6bJye1:
package main
import (
"fmt"
"strings"
)
func main() {
input := `xxxxx:yyyyy:zzz.aaa.bbb.cc:dd:ee:ff`
a := strings.FieldsFunc(input, Split)
t := Target{a[0], a[1], a[2], a[3], a[4], a[5], a[6]}
fmt.Println(t) // {xxxxx yyyyy zzz aaa bbb cc dd}
}
func Split(r rune) bool {
return r == ':' || r == '.'
}
type Target struct {
Service string
Type string
Domain string
Plan string
Host string
Region string
Other string
}
output:
{xxxxx yyyyy zzz aaa bbb cc dd}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)