我想取一個字符串,并將其轉換為map[string][]string. 到目前為止,我已經能夠將字符串轉換為 map[string]string,如下所示:package mainimport( "fmt" "strings")func main(){ var m map[string]string var ss []string s := "Owner.RefObjectName: Owner1, Owner2, Owner3&ScheduleState:State1, State2" ss = strings.Split(s, "&") m = make(map[string]string) for _, pair := range ss { z := strings.Split(pair, ":") m[z[0]] = z[1] } fmt.Println(m)}這給了我一個使用字符串鍵和字符串值的映射,如下所示:map[Owner.RefObjectName: Owner1, Owner2, Owner3 ScheduleState:State1, State2]但是,我需要將字符串值轉換為字符串切片,因為我需要自己引用 Owner1 等各個項目。簡而言之,我希望最終的地圖看起來像這樣:m := map[string][]string{ "Owner.RefObjectName": {"Owner1", "Owner2", "Owner3"}, "ScheduleState": {"State1", "State2"}, }其中 Owner1 Owner2 Owner3 不在單個字符串中,而是在字符串切片中。
1 回答

繁星淼淼
TA貢獻1775條經驗 獲得超11個贊
用逗號進一步分割你的字符串:
var m map[string][]string
// ...
m = make(map[string][]string)
for _, pair := range ss {
obj := strings.Split(pair, ":")
key := obj[0]
v := strings.Split(obj[1], ",")
m[key] = v
}
- 1 回答
- 0 關注
- 234 瀏覽
添加回答
舉報
0/150
提交
取消