JAVA 正则表达式 分组

几个原则:

分组的编号从1开始

遇到()加1

遇到断言跳过,如(?:exp)这种格式的,如果要算的话就,((?:exp))

PS:(pattern)这样就算一个分组

例子:

"<a\\s+([^>h]|h(?!ref\\s))*(?<=[\\s+]?href[\\s+]?=[\\s+]?('|\")?)([^\"|'>]+?(?=\"|'))(.+?)?((?<=>)(.+?)?(?=</a>))";

这个表达式有11对括号

5个红色的是断言

所以它有6个分组

编号从左到右,从外到内依次递增
   

 

posted on 2010-04-26 22:17  yangyh  阅读(2713)  评论(0编辑  收藏  举报