zoukankan      html  css  js  c++  java
  • .net 获取域名的顶级域名

      

      最近在做主机管理系统,当用户给某个主机更改主机头时,要判断绑定的主机头是否已经备案,查询是否备案的服务已经有了,传入的参数是一个域名的顶级域名。想在网上找个正则,没有发现合适的,就自已写了一个返回顶级域名的方法,做个备忘,以后如果其它语言用到此功能,直接按方法的逻辑改就行,方法如下:

      

    /// <summary>
        /// 获取域名的顶级域名
        /// </summary>
        /// <param name="domain"></param>
        /// <returns></returns>
        public static string GetTopDomainName(string domain)
        {
           //https://www.safsd.asdfasdf.baidu.com.cn/ssssd/s/b/d/hhh.html?domain=sfsdf.com.cn&id=1
            domain = domain.Trim().ToLower();
            string rootDomain = ".com.cn|.gov.cn|.cn|.com|.net|.org|.so|.co|.mobi|.tel|.biz|.info|.name|.me|.cc|.tv|.asiz|.hk";
            if (domain.StartsWith("http://")) domain=domain.Replace("http://", "");
            if (domain.StartsWith("https://")) domain = domain.Replace("https://", "");
            if (domain.StartsWith("www.")) domain = domain.Replace("www.", "");
            //safsd.asdfasdf.baidu.com.cn/ssssd/s/b/d/hhh.html?domain=sfsdf.com.cn&id=1
            if (domain.IndexOf("/") > 0)
                domain = domain.Substring(0, domain.IndexOf("/"));
            //safsd.asdfasdf.baidu.com.cn
            foreach (string item in rootDomain.Split('|'))
            {
                if (domain.EndsWith(item))
                {
                    domain = domain.Replace(item, "");
                    if (domain.LastIndexOf(".") > 0)//adfasd.asdfas.cn
                    {
                        domain = domain.Replace(domain.Substring(0, domain.LastIndexOf(".")+1), "");
                    }
                    return domain +item ;
                }
                continue;
            }
            return "";
        }
  • 相关阅读:
    2月24日-寒假进度24
    2月23日-寒假学习进度23
    2月22日-寒假学习进度22
    2月21日-寒假学习进度21
    第一周冲刺意见汇总
    团队绩效评估
    团队工作第七天
    团队工作第六天
    团队工作第五天
    团队工作第四天
  • 原文地址:https://www.cnblogs.com/jxcia_Lai/p/2620217.html
Copyright © 2011-2022 走看看