一.捕获分组
java正则表达式中以()括起来的内容表示一个分组,像((A)(B(C)))这个表达式中,共存在四个分组:
1.ABC
2.A
3.BC
4.C
很容易发现,分组是按照左边的括号出现的顺序来标号的
这就是捕获分组
二.Back引用
我们以下面这个正则表达式为例:
这个正则表达式在匹配的过程中,先匹配双引号"或者单引号',如果匹配的话,将其记为分组1;
然后匹配接下来的字符,虽然可以是任意多个的任意字符,但要想匹配该正则表达式,还需要匹配最后一项\1;
匹配\1指的是匹配分组1,即:
如果分组1是双引号",最后必须有一个双引号";
如果分组1是单引号',最后必须有一个单引号';
很明显,像"abc"或'abc'可以匹配,而"abc'或'abc"就不能匹配
-------------------------------------------------------------------------------------------------------------------
后记:如有错误请指出:)