我可以拆分一个字符串strings.Split:strings.Split(`Hello World`, " ")
// ["Hello", "World"] (length 2)但我想保留反斜杠转义空格:escapePreservingSplit(`Hello\ World`, " ")
// ["Hello\ World"] (length 1)在 Go 中完成此操作的推荐方法是什么?
1 回答
饮歌长啸
TA贡献1951条经验 获得超3个赞
由于 go 不支持环顾四周,所以这个问题并不容易解决。
这让你接近,但留下尾随空间完好无损:
re := regexp.MustCompile(`.*?[^\\]( |$)`)
split := re.FindAllString(`Hello Cruel\ World Pizza`, -1)
fmt.Printf("%#v", split)
输出:
[]string{"Hello ", "Cruel\\ World ", "Pizza"}
然后,您可以在接下来的步骤中修剪所有字符串。
- 1 回答
- 0 关注
- 75 浏览
添加回答
举报
0/150
提交
取消