2 回答

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

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超8個(gè)贊
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 關(guān)注
- 112 瀏覽
添加回答
舉報(bào)