运行此命令时:
@Test
public void regexTest() {
final String myString = "11X";
Matcher matcher = Pattern.compile("^(\\d+)(.*)?").matcher(myString);
System.out.println("myString = "+myString);
String group2 = matcher.group(2);
System.out.println("group2: "+group2);
}
我得到java.lang.IllegalStateException:找不到匹配项。哪个不正确,组2应该为X。
当我在行上设置断点时:
String group2 = matcher.group(2);
然后执行步骤,它正常通过,将X分配给group2。
我显然在这里缺少一些基本知识,但是呢?