java正则表达式
请问从
?fname=JINGXU~1.JPG&fdir=PIC&ftype=0&thumbP=30&thumbL=0&fail=0&time=1122796626
中分离出
1. JINGXU~1.JPG
2. PIC
3. 1122796626
用正则表达式该怎么写呢?谢谢 正则表达式
[解决办法]
找规则。。没有规律的东西是没法用正则的
暂时我看出来的规律只有
=开头,&分段
也就是String[] s=str.split("&");
然后
Pattern p=Pattern.complile(".*?=(.*?)");
for(String ss:s){
Matcher m=p.matcher(ss);
while(m.find()){
System.out.println(m.groud(1));
}
}
[解决办法]
你这个是要拿这几个的参数对应的参数值吧
public void main(String[] args){
String s="?fname=JINGXU~1.JPG&fdir=PIC&ftype=0&thumbP=30&thumbL=0&fail=0&time=1122796626";
String fname=getValue("fname",s);
System.out.println(fname);
String fdir=getValue("fdir",s);
System.out.println(fdir);
String time=getValue("time",s);
System.out.println(time);
//其它参数一样可以通过这种方法获得
}
//传入参数名url的参数,根据参数名获取参数值
public static String getValue(String name,String src){
Matcher m=Pattern.compile("(?<=\\Q"+name+"\\E=).*?(?=\\&
[解决办法]
$)").matcher(src);
return m.find()?m.group():"";
}