2 回答

TA貢獻1836條經(jīng)驗 獲得超13個贊
echo?"hello?world"?|?cut?-d"?"?-f2
這"hello world"
使用空格作為分隔符來分割字符串,并僅選擇第二部分(1 索引)。
在 Go 中,它strings.Split()
會返回一個切片,您可以根據(jù)需要對其進行索引或切片。
s?:=?"hello?world" fmt.Println(strings.Split(s,?"?")[1])
這輸出相同。在Go Playground上嘗試一下。如果輸入不能保證有 2 個部分,則上述索引 (?[1]
) 可能會出現(xiàn)混亂。在此之前檢查切片的長度。

TA貢獻1776條經(jīng)驗 獲得超12個贊
有一個strings.Split()
函數(shù)可以在指定的子字符串處分割字符串。
還有函數(shù)Fields(s string) []string
, 和FieldsFunc(s string, f func(rune) bool) []string
。
前者以空格分割字符串,后者使用給定的函數(shù)來確定是否必須分割字符串。
Split
和的區(qū)別Fields
在于Fields
將多個連續(xù)的空格視為一個分割位置。strings.Fields(" ?foo bar ?baz ? "))
產(chǎn)量["foo" "bar" "baz"]
, 和strings.Split(" ?foo bar ?baz ? ", " ")
產(chǎn)量["" "" "foo" "bar" "" "baz" "" "" ""]
.
- 2 回答
- 0 關(guān)注
- 153 瀏覽
添加回答
舉報