Matcher的Group使用
正则表达式中,()表示一个分组,使用分组可以将一段文本按正则表达式解析成多段(多个分组),以下是演示代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexMatchGroup { * @param args */ public static void main(String[] args) { Pattern p = Pattern.compile("(.*),(.*),(.*),(.*)"); Matcher m = p.matcher("user1,tom,m,23"); System.out.println("matcher groupCount = " + m.groupCount()); if (m.matches()) { for (int i = 0; i < m.groupCount(); i++) { System.out.println("group[" + (i+1) + "] = " + m.group(i + 1)); } } } }
|
运行结果:
1 2 3 4 5
| matcher groupCount = 4 group[1] = user1 group[2] = tom group[3] = m group[4] = 23
|