我可以拆分一個(gè)字符串strings.Split:strings.Split(`Hello World`, " ")
// ["Hello", "World"] (length 2)但我想保留反斜杠轉(zhuǎn)義空格:escapePreservingSplit(`Hello\ World`, " ")
// ["Hello\ World"] (length 1)在 Go 中完成此操作的推薦方法是什么?
1 回答

飲歌長(zhǎng)嘯
TA貢獻(xiàn)1951條經(jīng)驗(yàn) 獲得超3個(gè)贊
由于 go 不支持環(huán)顧四周,所以這個(gè)問(wèn)題并不容易解決。
這讓你接近,但留下尾隨空間完好無(wú)損:
re := regexp.MustCompile(`.*?[^\\]( |$)`)
split := re.FindAllString(`Hello Cruel\ World Pizza`, -1)
fmt.Printf("%#v", split)
輸出:
[]string{"Hello ", "Cruel\\ World ", "Pizza"}
然后,您可以在接下來(lái)的步驟中修剪所有字符串。
- 1 回答
- 0 關(guān)注
- 92 瀏覽
添加回答
舉報(bào)
0/150
提交
取消