package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)^(.*([^\n@].{15}|.[^\na].{14}|.{2}[^\nb].{13}|.{3}[^\nc].{12}|.{4}[^\nd].{11}|.{5}[^\ne].{10}|.{6}[^\nf]).{9}|.{7}[^\ng].{8}|.{8}[^\nh].{7}|.{9}[^\ni].{6}|.{10}[^\nj].{5}|.{11}[^\nk].{4}|.{12}[^\n.].{3}|.{13}[^\nc].{2}|.{14}[^\no].|.{15}[^\nm]|.{0,15})$`)
var str = `abc@some-site.com
111@abcdefghijk.com1111
abc@abcdefghijk.com
`
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/