package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?ms)^AELIST.*?(?=^[A-Z]|\Z)`)
var str = `AELIST 1 5159 5160 7007 7008 7015 7016 7023+
+ 7024 7031 7032 7039 7040 7047 7048 7055+
+ 7056 7063 7064 7071 7072 7079 7080 7087+
+ 7088 7095 7096 7103 7104 7111 7112 7119+
+ 7120 7127 7128 7135 7136 7143 7144 7151+
+ 7152 7159 7160 7167 7168 7175 7176 7183+
+ 7184 7191 7192 7199 7200 7207 7208 7215+
+ 7216 7223 7224 7231 7232
SET1 2 6159 6160 9007 9008 9015 9016 9023+
+ 9024 9031 9032 9039 9040 9047 9048 9055+
+ 9056 9063 9064 9071 9072 9079 9080 9087+
+ 9088 9095 9096 9103 9104 9111 9112 9119+
+ 9120 9127 9128 9135 9136 9143 9144 9151+
+ 9152 9159 9160
AELIST 5 11017 11018 11023 11024 11029 11030 11035+
+ 11036 11041 11042 11047 11048 11053 11054 11059+
+ 11060 11065 11066 11071 11072 11077 11078 11083+
+ 11084 11089 11090 11095 11096 11101 11102 11107+ `
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/