Java中有没有办法(可能有一个额外的开源库)来识别a中的捕获组java.util.regex.Pattern
(即在创建匹配器之前)
Java 文档中的示例:
捕获组通过从左到右计算它们的左括号来编号。例如,在表达式 ((A)(B(C))) 中,有四个这样的组:
1 ((A)(B(C))) 2 (A) 3 (B(C)) 4 (C)
原则上应该可以从(编译的)模式中识别这些。
更新:从@Leniel 和 eslewhere 看来,这个工具(“命名组”)将于 2011 年中期出现在 Java 7 中。如果我等不及我可以使用 jregex,尽管我不太确定 API 是什么是。