package com.Qi.cn;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
/**
* 现有字符串String:"a.do?pageIndex=1&ac=6&pageIndex=123&pageIndex1=1&pageindex=123&aaaa=2&pageIndex=中文"
Java中怎么用正则表达式将其转变为"a.do?ac=6&pageIndex1=1&pageindex=123&aaaa=2"
也就是依除掉字符串中的"pageindex=.*"
我的参数里有多个同名pageIndex(区分大小写),pageIndex的参数值也不一样长!
我要求把pageIndex=值全部移除掉,用正则表达式应该这么写?
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String string = "a.do?pageIndex=1&ac=6&pageIndex=123&pageIndex1=1&pageindex=123&aaaa=2&pageIndex=111";
System.out.println(string.replaceAll("(&pageIndex=([\u4e00-\u9fa5\uf900-\ufa2d0-9\\w]+))|(pageIndex=([\u4e00-\u9fa5\uf900-\ufa2d0-9\\w]+)&)", ""));
}
}
结果是:a.do?ac=6&pageIndex1=1&pageindex=123&aaaa=2
2008年11月06日 20:25