返回使用正则表达式找到的String

Den*_*er8 4 java regex

如果我有一个正则表达式,我该如何返回它找到的子字符串?我确定我必须遗漏一些明显的东西,但我发现了各种方法来确认我正在搜索的字符串中包含该子字符串,或者用其他东西替换它,但不能返回我发现的内容.

Rog*_*cia 7

Matcher matcher = Pattern.compile("a+").matcher("bbbbaaaaabbbb");
if(matcher.find())
     System.out.println(matcher.group(0)); //aaaaa
Run Code Online (Sandbox Code Playgroud)

如果你想要特定的部件

Matcher matcher = Pattern.compile("(a+)b*(c+)").matcher("bbbbaaaaabbbbccccbbb");
if(matcher.find()){
   System.out.println(matcher.group(1)); //aaaaa
   System.out.println(matcher.group(2)); //cccc
   System.out.println(matcher.group(0)); //aaaaabbbbcccc 
}
Run Code Online (Sandbox Code Playgroud)

组0是完整的模式..其他组在正则表达式(a + )b*(c + 中用括号分隔,)并且可以单独获得