El mètode de grup retorna la seqüència d'entrada coincident capturada per la coincidència anterior en forma de cadena. Aquest mètode retorna la cadena buida quan el patró coincideix correctament amb la cadena buida de l'entrada.
Signatura
Hi ha 3 tipus de mètodes de grup a Java. La signatura dels mètodes de grup es dóna a continuació
No. | Mètode | Descripció |
---|---|---|
1 | Grup de cadenes () | Retorna la seqüència coincident capturada per la coincidència anterior com a cadena. |
2 | Grup de cadenes (grup int) | Retorna la seqüència coincident capturada pel grup donat durant l'operació de concordança anterior com a cadena. |
3 | Grup de cadenes (nom de cadenes) | Retorna la seqüència coincident capturada pel grup amb nom donat durant l'operació de coincidència anterior o nul·la si la coincidència falla. |
Especificat per
El grup a la interfície MatchResult
Devolucions
La subseqüència (possiblement buida) que coincideix amb la coincidència anterior, en forma de cadena
Llançaments
IllegalStateException - Si encara no s'ha intentat cap coincidència, o si l'operació de coincidència anterior ha fallat.
Exemple 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()); } }Prova-ho ara
Sortida:
Start :1, End : 4, Group abb Start :4, End : 7, Group abb Start :7, End : 10,Group abb
Exemple 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); } }Prova-ho ara
Sortida:
Group 0 is Group 1 s My name is Khan and m not a terrerist.
Exemple 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')); } } } }Prova-ho ara
Sortida:
Hello world