获取子域。

我正在解析一些 url,需要从主机中提取子域。最简单的方法是使用“url.Parse()”获取主机,然后在“.”上拆分主机。如果有 3 个部分,则子域是第一部分。这将适用于美国 TLD,但是否有更好的方法来提取适用于所有 TLD 的子域?例如:


url = "www.google.com" // "www"

url2 = "google.com" // ""

url3 = "www.google.co.uk"  // "www.google"

url4 = "google.co.uk"  // "google"

parts, err := url.Parse(url)


扬帆大鱼
浏览 175回答 1
1回答

缥缈止盈

使用公共后缀:suffix, _ := publicsuffix.PublicSuffix(host)sub := host[:len(host) - len(suffix) - 1]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go