3 回答

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超2個(gè)贊
是regexp硬性要求嗎?
從長遠(yuǎn)來看,對您來說,使用類似strings.Fields的東西并按長度過濾結(jié)果數(shù)組會(huì)簡單得多(您也可以應(yīng)用任何其他要求)。
示例:(
在操場上試一試!https://play.golang.org/p/Ue2wO5d-Te)
package main
import (
"fmt"
"strings"
)
func CaptureGroups(input string) (output [][]string) {
fields := strings.Fields(input)
var group []string
for _, field := range fields {
if len(field) == 1 {
group = append(group, field)
} else {
if len(group) > 0 {
output = append(output, group)
group = make([]string, 0)
}
}
}
return
}
func main() {
input := "2001 970451 4 l 97 0451 iver b y c 3 0 1 8 4 1 4 hundred 2001 970451 nama 4 l 97 0451 iver hundred blah"
output := CaptureGroups(input)
fmt.Printf("Groups: %q", output)
}

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊
\040 與空格字符完全匹配。
所以要匹配類似 `byc 3 0 1 8 4 1 4 你需要
[a-z]\040[a-z]\040[a-z]\040[0-9]\040[0-9]\040[0-9]\040[0-9]
- 3 回答
- 0 關(guān)注
- 257 瀏覽
添加回答
舉報(bào)