读书人

小弟我也来问个正则表达式有关问题

发布时间: 2012-03-03 15:33:02 作者: rapoo

我也来问个正则表达式问题
(? <=&q=).+(&)
这个正则表达式是匹配 &q= 与 & 之间的字符
但遇到这样的字符串: &q=aaa&bbb&ccc&(有多个&)
他得到的结果是: aaa&bbb&ccc
他会找到最后一个&
我只想匹配第一个&
得到: aaa
上面的表达式怎么改?


[解决办法]
是不是这样
(? <=&q=).+|(&)

[解决办法]

Java code
        Pattern p = Pattern.compile("(?<=&q=).+?(?=&)");        String str = "&q=aaa&bbb&ccc&";        Matcher m = p.matcher(str);        while (m.find()) {            System.out.println(m.group());        } 

读书人网 >Java Web开发

热点推荐