自己找找:
http://www.regexlib.com/DisplayPatterns.aspx?cattabindex=1&categoryId=2

解决方案 »

  1.   

    $str[] = "www.csdn.com.cn";
    $str[] = "www.csdn.net";
    $str[] = "www.csdn.cn";
    $str[] = "www.csdn.c";
    $str[] = "http://www.csdn.com.cn";
    $str[] = "http://www.csdn.net";
    $str[] = "http://www.csdn.cn";
    $str[] = "http://www.csdn.c";
    $str[] = "http://www.csdn.abcdefg";
    $str[] = "http://www.csdn.com.cn.net";
    foreach($str as $key=>$val)
    {
        $key++;
        if(preg_match('/^(http:\/\/)?www\.[\d\w]{2,}(\.[\w]{2,6}){1,2}$/i',$val))
        {
            echo "ok<br>";
        }
        else
        {
            echo "第 $key 个not ok<br>";
        }
    }
      

  2.   

    恩,我修正一下我的语言表达,准确的说应该是寻求“更完善、更严密”的正则表达式,
    要求能达到与IE浏览器同等的解析能力,刚做了点小修改,现在的表达式为:/^([hH]{1}[tT]{2}[pP]{1}://)?[wW]{3}\.[0-9a-zA-Z][0-9a-zA-Z-]{0,25}((\.[a-zA-Z]{3,4})|(\.[a-zA-Z]{2})){1,2}$/附加的条件是:
    1、和IE浏览器一样大小写通用;
    2、严格遵照Internet国际顶域名、各国国内顶级域名的命名规则;
    3、凡符合此正则表达式的URL可以真实存在;
    4、凡不符合此正则表达式的URL不可能真实存在;
    5、真实存在的URL(顶级域名)必能符合此正则表达式;目标:
    1、能检验该域名是否真实存在可行;
    2、可用于比如域名注册机构所用;目前没有实现的:
    1、国际域名最长26个字符,国内域名最长20个字符(目前只统一限制为最长26个字符);
    2、不能检验域名后缀是否存在,不能检验代表国别的域名后缀是否存在(目前只能限定后缀字符个数,还不支持.museum域名);-----------------------------
    回: ustb(偶然) 
    域名命名规则中是不允许存在“_”的,但允许存在“-”;
      

  3.   

    WWW是多余的,这是主机名,不是域名。
    如果你要的实际上不是域名模式,而是主机+域名的模式,你还应该考虑多级解析。
    你说的两个没有实现的东西,我看是你怕麻烦吧?不怕麻烦你一定能够搞定的。
    另外,要实现你的目标,应该借助WHOIS。找找资料看看吧,我没有做过,帮不了你了。
    ——资料找到了共享哦,共同进步嘛!
      

  4.   

    域名后缀国别信息大全
    http://www.wangjianran.com/you/203.htm
    真多!
      

  5.   

    今天的最后成果:
    -----------------------------------------<?php$str[] = "www.csdn.com.cn";
    $str[] = "http://www.cs-dn.com.cn";
    $str[] = "hTTP://WWw.csdn.net";
    $str[] = "www.csdn.cn";
    $str[] = "www.csdn-.cn";
    $str[] = "www.coM.cN";
    $str[] = "Http://www.csdn.cn";
    $str[] = "http://www.csdn.co.cn";
    $str[] = "http://www.csdn.info.jp";
    $str[] = "-------↑ Right ↓ Error--------";
    $str[] = "www.c_sdn.com.cn";
    $str[] = "www._csdn.net";
    $str[] = "www.-csdn.cn";
    $str[] = "www.csdn.c";
    $str[] = "www.csdn..";
    $str[] = "www.csdn.";
    $str[] = "www.csdn";  //未解决
    $str[] = "http://www.csdn.cn.co";
    $str[] = "http://www.csdn.c";
    $str[] = "http://www.csdn.abcdefg";
    $str[] = "http://www.csdn.com.cn.net";
    $str[] = "htp://www.csdn.ciii.pp";
    $str[] = "http://www.csdn.ciii.pp";
    $str[] = "http://www.csdn.com.net";$pattern = '/^(http:\/\/)?www\.[0-9a-z][0-9a-z-]{0,25}((\.(aero|biz|cc|co|com|coop|edu|gov|info|int|mil|museum|name|nato|net|org|tv))?(\.(af|aq|at|au|be|bg|br|ca|ch|cl|cn|de|eg|es|fi|fr|gr|hk|hu|ie|il|in|iq|ir|is|it|jp|kr|mx|nl|no|nz|pe|ph|pr|pt|ru|se|sg|th|tr|tw|uk|us|za))?){1}$/i';foreach($str as $key=>$val)
    {
        $key++;
        if(preg_match($pattern,$val))
            echo "<br><font color=green>Right!</font> ".$val;
        else
            echo "<br><font color=red>Error!</font> ".$val;
    }
    ?>