2 回答

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超9個(gè)贊
您可以使用
re := regexp.MustCompile(`(?:\[\d{2}])+(.*)`)
match := re.FindStringSubmatch(s)
if len(match) > 1 {
return match[1] != ""
}
return false
該(?:\[\d{2}])+(.*)模式匹配 1+ 次出現(xiàn)[,2 個(gè)數(shù)字,]然后將除換行符之外的任何 0 個(gè)或更多字符捕獲到組 1 中。然后,如果找到匹配項(xiàng) ( if len(match) > 1),true則如果組 1 值不為空,則應(yīng)返回 ( match[1] != ""),否則false返回。
請參閱Go 演示:
package main
import (
"fmt"
"regexp"
)
func main() {
strs := []string{
"[11][22][33]",
"___[11][22][33]",
"[11][22][33]____",
"[11][22]____[33]",
}
for _, str := range strs {
fmt.Printf("%q - %t\n", str, match(str))
}
}
var re = regexp.MustCompile(`(?:\[\d{2}])+(.*)`)
func match(s string) bool {
match := re.FindStringSubmatch(s)
if len(match) > 1 {
return match[1] != ""
}
return false
}
輸出:
"[11][22][33]" - false
"___[11][22][33]" - false
"[11][22][33]____" - true
"[11][22]____[33]" - true

TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊
我認(rèn)為您需要使用的正則表達(dá)式是這樣的:
(\[[0-9]{2}\]){1,}[a-z]{1,}
- 2 回答
- 0 關(guān)注
- 173 瀏覽
添加回答
舉報(bào)