package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)\b\w[-.\w]+\.(com|org|net)\b`)
var str = `Test strings
hello.com hello1.com 1hello.com hello-1.com hello-hi1.com 1hello-hi.com h3ll0.com
also matches
hello_1.com
---.com
1234.org
-.net
a.net
abc.comical
www.company.com
this is a sentance about net-working.networking is bla bla bla
will not match other domains
hello.co.uk
hello.co
subdomain.hello.com
correctly grabs the domain for
abc.com&foobar
abc.com/foobar
abc.com?foobar`
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/