我想要篩選出一堆網址,以找到它們的基本網址,它不包含www或任何前綴,但是在編寫表達式來捕獲它時遇到了麻煩,但是有一部分TLD,它變成一個相當複雜的問題。正則表達式基址URL抓取
answers.yahoo.com => yahoo.com
www.google.com => google.com
uk.answers.yahoo.co.uk = > yahoo.co.uk
www.g.se => g.se
有什麼建議嗎?
我正在使用這個表達式,但是當域名不超過2個字符或者當域名tld小於2個字符時,它就會搞砸了。
(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$
您將需要一個TLD列表。好消息是,在http://publicsuffix.org上維護了一份TLD列表。看到這個優秀的問題和答案:[從URL獲取子域](http://stackoverflow.com/questions/288810/get-the-subdomain-from-a-url) – 2012-04-26 02:54:06