urlparser
Installation
$ go get github.com/51gn3d/urlparser
Usage
package main
import (
"fmt"
tld "github.com/51gn3d/urlparser"
)
func main() {
urls := []string{
"http://google.com",
"http://blog.google",
"https://www.medi-cal.ca.gov/",
"https://ato.gov.au",
"http://a.very.complex-domain.co.uk:8080/foo/bar",
}
for _, url := range urls {
u, _ := tld.Parse(url)
fmt.Printf("%50s = [ %s ] [ %s ] [ %s ] [ %s ] [ %s ]\n",
u, u.Subdomain, u.Domain, u.TLD, u.Port, u.Path)
}
}
$ go run main.go
http://google.com = [ ] [ google ] [ com ] [ ] [ ]
http://blog.google = [ ] [ blog ] [ google ] [ ] [ ]
https://www.medi-cal.ca.gov/ = [ www.medi-cal ] [ ca ] [ gov ] [ ] [ / ]
https://ato.gov.au = [ ] [ ato ] [ gov.au ] [ ] [ ]
http://a.very.complex-domain.co.uk:8080/foo/bar = [ a.very ] [ complex-domain ] [ co.uk ] [ 8080 ] [ /foo/bar ]