MatchResult可以这样理解就是匹配了regex pattern的String和一些状态项的结合体。
但是有两点需要注意的:
1、经常使用到的:
result = matcher.getMatch();
返回的MatchResult是这次使用contains时所得的结果。下次再调用新一轮的contains(),然后再使用getMatch()返回的会是新一轮的结果。
2、一个概念的理解:group
所谓的group就是在pattern regex中使用到的分组。
比如说,一个regex为:(\d+)(abc)
“(\d+)”match出来的结果就是对应:group 1
而“(abc)”match出来的结果就是对应:group 2
group 0指代整个匹配。其中,result.group(0)的使用效果与result.tostring()一样。
除此之外,还有一点需要注意的,group的组数:至少为1(因为至少包括整个匹配这种情况嘛!)