Golang 将字符串化列表转换为切片

我有一个工作流程,其中创建了一个列表并将其发送到 SQS 队列(因此必须转换为字符串),然后由 Go 函数拾取它。我需要解析以下字符串列表:

"['bucket___file1.csv___groupFile.csv___custom', 'bucket___file2.csv___groupFile.csv___modeler']"

变成这样的字符串切片:

[]string{'bucket___file1.csv___groupFile.csv___custom', 'bucket___file2.csv___groupFile.csv___modeler'}

所以我可以通过索引访问和解析它们。我该怎么做?


皈依舞
浏览 654回答 1
1回答

慕标5832272

您可以将字符串转换为 json 并使用 json 解码器获取字符串数组package mainimport (    "fmt"    "encoding/json"    "strings")func main() {    inputString := "['bucket___file1.csv___groupFile.csv___custom', 'bucket___file2.csv___groupFile.csv___modeler']"    // convert string to json string    jsonString := strings.ReplaceAll(inputString, "'", "\"")    var expectedStringArray []string    json.Unmarshal([]byte(jsonString), &expectedStringArray)    fmt.Println(expectedStringArray)}这应该可以解决您的问题请注意,当您有'一个数组字符串时,上述解决方案将失败。对于一个可靠的解决方案您可以将正确的 JSON 推送到队列中,并且您可以跳过我上面提供的解决方案中的转换部分。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go