首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

请问一个正则替换的有关问题

2012-03-28 
请教一个正则替换的问题http://www.domain.com/show.php?idxxx&skkkhttp://list.domain.com/list_xxx.ht

请教一个正则替换的问题
http://www.domain.com/show.php?id=xxx&s=kkk
http://list.domain.com/list_xxx.html?t=kkk

其中xxx kkk 为变量

有如上两种url,如何通过正则替换将他们匹配替换成以下格式

http://www.domain.com/show.php?id=xxx
http://list.domain.com/list_xxx.html
代码如下



String[] RgexArray = new String[2];
RgexArray[0] = 正则匹配替换1;
RgexArray[1] = 正则匹配替换2;

for(int i = 0 ; i < RgexArray.length ; i++){
  url = url.replaceAll(RgexArray[i],"");
}

请教


[解决办法]
不是太明白你要干啥.
是说url中只能在?后面跟一个id=xxx,其他的都不要,并且必须按你所给代码的方式来进行,是这样么? 

如果是的话,给你段代码.

Java code
      String url = "http://www.domain.com/show.php?ss=xxx&id=kkk&s=kkk&s=kkk&s=kkk";    String[] RgexArray = new String[2];    RgexArray[0] = "(?<=\\?).+(?=id=[^&]*)";//第一步将?和id之间的都去掉    RgexArray[1] = "&.*|\\?(?!id).*";//第二步将&xx什么的或者?后面不带id的都去掉    for (int i = 0; i < RgexArray.length; i++) {        url = url.replaceAll(RgexArray[i], "");    }    System.out.println(url); 

热点排行