如何转换其中包含单个字符串数组的单个字符串。
func main() {
stringArrayInString := "[\"Hello\",\"Hai\",\"How are you!\"]" //Single string which has string array in it
fmt.Println(stringArrayInString)
// code to convert to the string array
// convertedString
}
输出必须是这样
convertedString[0] = "Hello"
convertedString[1] = "Hai"
convertedString[2] = "How are you!"
如果上面的输入字符串具有混合数据类型(例如int,string,JSON类型),是否有可能 例如
stringArrayInString := "[\"Hello\",\"{\"msg\":\"Hai\"}\",123]"
//after converting
convertedString[0] = "Hello"
convertedString[1] = "{\"msg\":\"Hai\"}"
convertedString[2] = 123
答案 0 :(得分:1)
您拥有的字符串数组是有效的JSON数组,因此您可以执行以下操作:
var convertedString []string
json.Unmarshal([]byte(str),&convertedString)
如果该数组中有多种数据类型,则可以使用字符串数组来实现,需要接口{}数组:
var convertedData []interface{}
json.Unmarshal([]byte(str),&convertedData)
然后,您需要检查该数组中单个元素的类型以找出它们的类型。