preg_replace('/(\/\/)([^.\/]+\.[^.\/]+(?:\/|$))/i', '$1www.$2', 'http://weibo.com');

解决方案 »

  1.   

    echo preg_replace('/(\/\/)([^.\/]+\.[^.\/]+)\/?$/i', '$1www.$2', 'http://weibo.com');
    echo preg_replace('/(\/\/)([^.\/]+\.[^.\/]+)\/?$/i', '$1www.$2', 'http://weibo.com/');
      

  2.   


    只保留“/” 么,后的字符不需要? 
    /和后面的字符都需要。我的目标是将两段域名修改为三段,增加www.,同时删除最后的/
      

  3.   

    试试
    echo preg_replace('/(\/\/)([^.\/]+\.[^.\/]+)($|\/)(.+)?/ie', '"$1"."www."."$2".("$4" ? "/"."$4" : "")', 'http://weibo.com/aa');