java Mather 的 group 含义
参考博文: http://blog.csdn.net/java2king/article/details/4395067 明白了group 的 含义
public class Test { public static void main(String[] args) { String s = "ROLE_CODE = 'fdsdfxsd212'=== 'fsdfdsfds'"; Pattern p = Pattern.compile("'([a-zA-z0-9]+)'"); Matcher m = p.matcher(s); while(m.find()){ System.out.println(m.group()); // group() 指符合全部正则表达式的 字符串 。 返回:'fdsdfxsd212' 'fsdfdsfds'
System.out.println(m.group(1));//group(1) 指符合第一对括号中正则表达式的字符串返回:fdsdfxsd212 fsdfdsfds
System.out.println(m.group(2)); //报错: 因为表达式中只有 一对 括号 。。
} } }
总结: group(int i) i 指的是 正则表达式中 第几对 括号内的 正则表达式 。。而不是指符合条件的第几个字符串。。。。