package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)^((\$?[A-Z]+\$?\d+)(?::(?2))?)(?:,\s*(?1))*$`)
var str = `E5
AA55:E5
DD5555:DDD55555, E5, F5:AA55
$F7:$G$7
bis_document_id
PCR1MM_YPCVolume
sheet_error7
blahE5
training_A1
myNameIsGeorgeJR
`
for i, match := range re.FindAllString(str, -1) {
fmt.Println(match, "found at index", i)
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Golang, please visit: https://golang.org/pkg/regexp/