为了账号安全,请及时绑定邮箱和手机立即绑定

在保留转义空格的同时在 Go 中拆分字符串

在保留转义空格的同时在 Go 中拆分字符串

Go
海绵宝宝撒 2022-12-19 21:47:37
我可以拆分一个字符串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"}

然后,您可以在接下来的步骤中修剪所有字符串。


查看完整回答
反对 回复 2022-12-19
  • 1 回答
  • 0 关注
  • 59 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信