2 回答

TA貢獻1757條經驗 獲得超7個贊
實際上,您當前的實現似乎很好。
您不能使用 JSON 取消封口,因為 JSON 字符串必須括在雙引號中。"
而是字符串。字段
就是這樣做的,它會在一個或多個匹配的字符上拆分字符串,即 、 、 。和。unicode.IsSpace
\t
\n
\v
\f
\r
如果地形圖形式發送一個空集,如 中所述,Moeover 也有效:[]
返回 [...] 如果 s 僅包含空格,則返回一個空片。
...這包括完全空曠的情況。s
""
如果您需要對此進行其他控制,則可以使用字符串。FieldsFunc
,它接受類型的函數,因此您可以自己確定構成“空間”的內容。但是,由于您的輸入字符串來自terraform,我想它會表現得足夠好。func(rune) bool
可能有第三方包已經實現了此功能,但除非您的程序已經導入了它們,否則我認為基于標準庫的本機解決方案始終是首選。
unicode.IsSpace
實際上還包括更高的符文和,在這種情況下調用0x85
0xA0
strings.Fields
FieldsFunc(s, unicode.IsSpace)

TA貢獻1789條經驗 獲得超8個贊
package main
import (
"fmt"
"strings"
)
func main() {
src := "[a b]"
dst := strings.Split(src[1:len(src)-1], " ")
fmt.Println(dst)
}
https://play.golang.org/p/KVY4r_8RWv6
- 2 回答
- 0 關注
- 104 瀏覽
添加回答
舉報