“1     ((A)(B(C)))  
2     \A  
3     (B(C))  
4     (C) “ 
是J从DK API中文版Pattern类中的摘录中。比对了JDK API英文版的Pattern类,发现“2     \A ”是排版错了。英文版本如下: 
1     ((A)(B(C)))  
2     (A)  
3     (B(C))  
4     (C)  
 
正规中的组和捕获代码示例如下:- import java.util.regex.Matcher;
 
 - import java.util.regex.Pattern;
 
 -   
 
 - public class PatternTest {  
 
 -   
 
 -     public static void main(String[] args) {  
 
 -         String text = "<textarea rows=\"20\" cols=\"70\">nexus maven repository index properties updating index central</textarea>";  
 
 -         //下面的正则表达式中共有四个捕获组:(<textarea.*?>)、(.*?)、(</textarea>)和整个匹配到的内容  
 
 -         String reg = "(<textarea.*?>)(.*?)(</textarea>)";    
 
 -         Pattern p = Pattern.compile(reg);  
 
 -         Matcher m = p.matcher(text);  
 
 -         while (m.find()) {  
 
 -             System.out.println(m.group(0)); // 整个匹配到的内容  
 
 -             System.out.println(m.group(1)); // (<textarea.*?>)  
 
 -             System.out.println(m.group(2)); // (.*?)  
 
 -             System.out.println(m.group(3)); // (</textarea>)  
 
 -         }  
 
 -     }  
 
 - }
 
  复制代码 更多的讲解见:JAVA正则表达式-捕获组与非捕获组 |