Metoda de grup returnează secvența de intrare potrivită capturată de potrivirea anterioară sub forma șirului. Această metodă returnează șirul gol atunci când modelul se potrivește cu succes cu șirul gol din intrare.
Semnătură
Există 3 tipuri de metode de grup în Java. Semnătura metodelor de grup este dată mai jos
Nu. | Metodă | Descriere |
---|---|---|
1 | Grup de șiruri () | Returnează secvența potrivită capturată de potrivirea anterioară ca șir. |
2 | Grup de șiruri (grup int) | Returnează secvența potrivită capturată de grupul dat în timpul operației de potrivire anterioară ca șir. |
3 | Grup de șiruri (nume șir) | Returnează secvența potrivită capturată de grupul numit în timpul operațiunii de potrivire anterioară sau nulă dacă potrivirea eșuează. |
Specificat de
Grupul din interfața MatchResult
Se intoarce
Subsecvența (posibil goală) potrivită de potrivirea anterioară, sub formă de șir
Aruncări
IllegalStateException - Dacă nu s-a încercat încă o potrivire sau dacă operațiunea anterioară de potrivire a eșuat.
Exemplul 1
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexGroupExample1 { public static void main(String[] args) { // TODO Auto-generated method stub Pattern p=Pattern.compile('a(bb)'); Matcher m=p.matcher('aabbabbabbaaa'); while(m.find()) System.out.println('Start :'+m.start()+', End : '+m.end()+', Group '+m.group()); } }Testează-l acum
Ieșire:
Start :1, End : 4, Group abb Start :4, End : 7, Group abb Start :7, End : 10,Group abb
Exemplul 2
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexGroupExample2 { public static void main(String[] args) { Pattern pattern = Pattern.compile('i(s)'); String input = 'My name is Khan and m not a terrerist.'; Matcher m = pattern.matcher(input); m.find(); String grp0 = m.group(0); String grp1 = m.group(1); System.out.println('Group 0 ' + grp0); System.out.println('Group 1 ' + grp1); System.out.println(input); } }Testează-l acum
Ieșire:
Group 0 is Group 1 s My name is Khan and m not a terrerist.
Exemplul 3
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexGroupExample3 { public static void main(String args[]) { String regex = '\b(?[A-Za-z\s]+)'; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher('#### Hello world ####'); while (matcher.find()) { if (matcher.groupCount() == 1) { System.out.println(' '+matcher.group('java')); } } } }Testează-l acum
Ieșire:
Hello world