我有一个工作流程,其中创建了一个列表并将其发送到 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'}所以我可以通过索引访问和解析它们。我该怎么做?
1 回答
慕标5832272
TA贡献1966条经验 获得超4个赞
您可以将字符串转换为 json 并使用 json 解码器获取字符串数组
package main
import (
"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 推送到队列中,并且您可以跳过我上面提供的解决方案中的转换部分。
- 1 回答
- 0 关注
- 653 浏览
添加回答
举报
0/150
提交
取消
