gpt4 book ai didi

dictionary - 如何在实际 map 中转换字符串 "key:value"?

转载 作者:数据小太阳 更新时间:2023-10-29 03:43:24 26 4
gpt4 key购买 nike

是否可以在实际的 Golang 映射中转换包含“key:value key2:value”的字符串?

例子:

package main

type Test struct{
options map[string]interface{}
}

func main() {
string := "key:value key2:key:value"
var test Test
/// Do something to parse string into test.Options
}

谢谢!

最佳答案

是的,您绝对可以将该字符串解析为您指定类型的映射!

看看“字符串”包,特别是 strings.SplitN(...) .考虑这些示例并考虑如何将它们与迭代结合起来以填充该映射:

str := "key:value key2:key:value"

kvs := strings.SplitN(str, " ", -1)
// []string{
// "key:value",
// "key2:key:value",
// }

kv1 := strings.SplitN(kvs[1], ":", 2)
// []string{
// "key2",
// "key:value",
// }

即可以将字符串按空格()分割得到每一个键/值对,然后可以按冒号(:)分割得到每对进入他们自己的部分。最后,您只需将每一对添加到 map 中即可!

请注意,当您以 -1 作为最后一个参数调用 strings.SplitN(...) 时,它会将输入字符串拆分为存在的尽可能多的子字符串:

kv1 := strings.SplitN(kvs[1], ":", -1) // Note the -1 here
// []string{
// "key2",
// "key",
// "value",
// }

关于dictionary - 如何在实际 map 中转换字符串 "key:value"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52544113/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com