求几个正则表达式
具体需求是这样的。 
 数据如下三组,前一个是浏览器地址上的地址,后面一个实际请求的地址   
 http://test.abc.com 
 http://www.abc.com/?User=test     
 http://test.abc.com/List.aspx?Pages=3 
 http://www.abc.com/List.aspx?Pages=3&User=test   
 http://www.test.abc.com/List.aspx?Pages=3         (注意,这种格式也是存在的) 
 http://www.abc.com/List.aspx?Pages=3&User=test   
 -------------------------------------------------- 
 其中   test   是会员的帐号。   abc.com   是域名。这两者都是可变的。 
 换句话来说,就是把所有泛域名的请求,全部转移到其根域名的   www   主机上进行;   
 将会员参数传入时。如果请求的   URL   有参数,用   &   加上参数,反之用   ?   。   
 欢迎大家帮助,谢谢. 
------解决方案--------------------因为这个需求的确很复杂,上面这些例子有可能还不能完全覆盖你的所有情况,你先试试吧,上面这三种是都满足了 
  <script language=javascript>  
 	var str= 'http://test.abc.com/List.aspx?Pages=3 '; 
 	var str= "http://test.abc.com "; 
 	var str= "http://www.test.abc1.com/List.aspx?Pages=3 " 
 	re=/^(http:\/\/)(www.)?([^\.]+)(\.[^\/]+)((\/)([^\?]+)(\?)?(.*))?$/ 
 	alert(str.replace( 
 			re,function(a,b,c,d,e,f,g,h,i,j){ 
 				if(!f) 
 				{ 
 					return b+ "www "+e+ "?User= "+d 
 				} 
 				return b+ "www "+e+g+h+i+j+((i)? '&User= ': '?User= ')+d 
 			} 
 		) 
 	)  	 
  </script>
------解决方案--------------------//上面一个对用户名的匹配度可能不够全   
  <SCRIPT LANGUAGE= "JavaScript ">  
 var s =  "http://www.test.abc.com/List.aspx?Pages=3 ";//   (注意,这种格式也是存在的) 
 //http://www.abc.com/List.aspx?Pages=3&User=test   
 var r = /^https?:\/\/(www\.)?([^\.]+)\.abc\.com\/([^\?]+)(\?(.+))?$/i; 
 s = s.replace(r,  "http://www.abc.com/$3?User=$2&$5 "); 
 alert(s) 
  </SCRIPT>