从C#中的URL中提取域名

Xaq*_*ron 5 c# dns url whois extract

这个问题在其他语言/平台上有答案,但我找不到强大的解决方案C#.在这里,我正在寻找我们使用的URL的一部分,WHOIS所以我对子域,端口,架构等不感兴趣.

Example 1: http://s1.website.co.uk/folder/querystring?key=value => website.co.uk
Example 2: ftp://username:password@website.com => website.com
Run Code Online (Sandbox Code Playgroud)

当whois中的所有者是相同的时,结果应该是相同的,因此sub1.xyz.com和sub2.xyz.com都属于拥有xyz.com的人,我需要从URL中提取.

ser*_*ail 6

我需要相同的,所以我写了一个类,你可以复制并粘贴到你的解决方案中.它使用tld的硬编码字符串数组.http://pastebin.com/raw.php?i=VY3DCNhp

Console.WriteLine(GetDomain.GetDomainFromUrl("http://www.beta.microsoft.com/path/page.htm"));
Run Code Online (Sandbox Code Playgroud)

输出 microsoft.com

Console.WriteLine(GetDomain.GetDomainFromUrl("http://www.beta.microsoft.co.uk/path/page.htm"));
Run Code Online (Sandbox Code Playgroud)

输出 microsoft.co.uk