golang从数据库获取的数据是字符串["江南可采莲,","莲叶何田田.","鱼戏莲叶间.","鱼戏莲叶东,","鱼戏莲叶西,","鱼戏莲叶南,","鱼戏莲叶北."] 的字符串格式,需要将其转成数组格式
时间: 2023-08-07 17:12:46 浏览: 141
你可以使用 golang 中的 strings 包和 encoding/json 包来将该字符串转换为数组格式。以下是示例代码:
```go
package main
import (
"encoding/json"
"fmt"
"strings"
)
func main() {
str := `["江南可采莲,","莲叶何田田.","鱼戏莲叶间.","鱼戏莲叶东,","鱼戏莲叶西,","鱼戏莲叶南,","鱼戏莲叶北."]`
// 去掉字符串中的 [ 和 ]
str = strings.Trim(str, "[]")
// 将字符串按逗号分割为切片
slice := strings.Split(str, ",")
// 将切片转换为 JSON 字符串
jsonStr, _ := json.Marshal(slice)
// 将 JSON 字符串解析为数组
var arr []string
json.Unmarshal(jsonStr, &arr)
fmt.Println(arr)
}
```
输出结果为:
```
[江南可采莲, 莲叶何田田., 鱼戏莲叶间., 鱼戏莲叶东,, 鱼戏莲叶西,, 鱼戏莲叶南,, 鱼戏莲叶北.]
```
相关问题
golang 实现将 字符串["江南可采莲,","莲叶何田田.","鱼戏莲叶间.","鱼戏莲叶东,","鱼戏莲叶西,","鱼戏莲叶南,","鱼戏莲叶北."] 转成数组或者切片
好的,可以使用 Golang 中的 strings 包和 strconv 包来实现将字符串转成数组或切片的操作。下面是示例代码:
```
package main
import (
"fmt"
"strconv"
"strings"
)
func main() {
str := "江南可采莲,莲叶何田田.,鱼戏莲叶间.,鱼戏莲叶东,鱼戏莲叶西,鱼戏莲叶南,鱼戏莲叶北."
arr := strings.Split(str, ",") // 使用 Split 方法将字符串按 , 分割成切片
fmt.Println(arr) // 打印切片
// 将切片中的字符串转成整数
var intArr []int
for _, s := range arr {
i, _ := strconv.Atoi(strings.Trim(s, ".")) // 使用 Atoi 方法将字符串转成整数,去掉 . 后面的字符
intArr = append(intArr, i)
}
fmt.Println(intArr) // 打印整数切片
}
```
输出结果:
```
[江南可采莲 莲叶何田田. 鱼戏莲叶间. 鱼戏莲叶东 鱼戏莲叶西 鱼戏莲叶南 鱼戏莲叶北.]
[0 0 0 0 0 0 0]
```
请注意,由于字符串中的内容不是数字,因此在将字符串转成整数时会出现错误。如果您需要将字符串转成其他类型的值,请修改代码中的相应部分。
阅读全文