logo

Metoda grupy() Java Matcher

Metoda group zwraca dopasowaną sekwencję wejściową przechwyconą przez poprzednie dopasowanie w postaci ciągu znaków. Ta metoda zwraca pusty ciąg, gdy wzorzec pomyślnie pasuje do pustego ciągu na wejściu.

Podpis

W Javie istnieją trzy typy metod grupowych. Poniżej podano sygnaturę metod grupowych

NIE. metoda Opis
1 grupa ciągów() Zwraca dopasowaną sekwencję przechwyconą przez poprzednie dopasowanie jako ciąg.
2 Grupa ciągów (grupa int) Zwraca dopasowaną sekwencję przechwyconą przez daną grupę podczas poprzedniej operacji dopasowania jako ciąg znaków.
3 Grupa ciągów (nazwa ciągu) Zwraca dopasowaną sekwencję przechwyconą przez daną nazwaną grupę podczas poprzedniej operacji dopasowania lub wartość null, jeśli dopasowanie nie powiedzie się.

Określone przez

Grupa w interfejsie MatchResult

Zwroty

(prawdopodobnie pusta) podsekwencja dopasowana przez poprzednie dopasowanie, w formie ciągu znaków

Rzuca

Wyjątek IllegalStateException - Jeśli nie podjęto jeszcze próby dopasowania lub jeśli poprzednia operacja dopasowania nie powiodła się.

Przykład 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()); } } 
Przetestuj teraz

Wyjście:

 Start :1, End : 4, Group abb Start :4, End : 7, Group abb Start :7, End : 10,Group abb 

Przykład 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); } } 
Przetestuj teraz

Wyjście:

 Group 0 is Group 1 s My name is Khan and m not a terrerist. 

Przykład 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')); } } } } 
Przetestuj teraz

Wyjście:

 Hello world 

Uwaga: Tutaj nazwa grupy Java zawiera wszystkie alfabety, zarówno małe, jak i duże.