本帖最后由 mingfish2 于 2011-02-21 11:56:07 编辑

解决方案 »

  1.   

    以下代码验证通过
    <?php
    $href="http://site.com"; 
    $href="http://site.com.cn"; 
    $href="http://site.net.cn"; 
    $href="http://www.site.com"; 
    $href="http://blog.site.com"; 
    $href="http://blog.site.com/index.html"; 
    $href="http://blog.site.com.cn/index.html"; 
    $href="http://xxx.site.xx.xx/xxx.html"; 
    $whois = array('com','net','cc','cn','org','info','com.cn','net.cn',);
    if(preg_match('/http:\/\/(\w+)\.(\w+)/i',$href,$match)){
      if($match[1]!='www' && in_array($match[2],$whois)){
        $out = $match[1] ;
      }elseif($match[1]!='www' && !in_array($match[2],$whois)){  
        $out = $match[2] ;
      }else{
        $out = $match[2];
      }
      
    }
    echo '<pre>';
    print_r($out);
    ?>
      

  2.   

    这个更准确
    [code=PHPp]$href="http://site.com"; 
    //$href="http://site.com.cn"; 
    //$href="http://site.net.cn"; 
    //$href="http://www.site.com"; 
    //$href="http://blog.site.com"; 
    //$href="http://blog.site.com/index.html"; 
    //$href="http://blog.site.com.cn/index.html"; 
    //$href="http://xxx.site.xx.xx/xxx.html"; 
    $whois = array('com','net','cc','cn','org','info','com.cn','net.cn',);
    if(preg_match('/http:\/\/(\w+)\.(\w+)/i',$href,$match)){
    //print_r($match);
      if(in_array($match[2],$whois)){
        $out = $match[1] ;
      }else{
        $out = $match[2];
      }
      
    }
    echo $out ;[/code]