Metoda skupiny Java Matcher group().
Metoda skupiny vrací odpovídající vstupní sekvenci zachycenou předchozí shodou ve formě řetězce. Tato metoda vrátí prázdný řetězec, když vzor úspěšně odpovídá prázdnému řetězci na vstupu.
Podpis
V Javě existují 3 typy skupinových metod. Podpisy skupinových metod jsou uvedeny níže
| Ne. | Metoda | Popis |
|---|---|---|
| 1 | Skupina řetězců() | Vrátí shodující se sekvenci zachycenou předchozí shodou jako řetězec. |
| 2 | Skupina řetězců (int group) | Vrátí shodující se sekvenci zachycenou danou skupinou během předchozí operace shody jako řetězec. |
| 3 | Skupina řetězců (název řetězce) | Vrátí shodující se sekvenci zachycenou danou pojmenovanou skupinou během předchozí operace shody nebo hodnotu null, pokud se shoda nezdaří. |
Určeno uživatelem
Skupina v rozhraní MatchResult
Návraty
(případně prázdná) podsekvence odpovídající předchozí shodě ve formě řetězce
hází
IllegalStateException - Pokud ještě nedošlo k žádnému pokusu o shodu nebo pokud se předchozí operace shody nezdařila.
Příklad 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()); } } Otestujte to hned Výstup:
Start :1, End : 4, Group abb Start :4, End : 7, Group abb Start :7, End : 10,Group abb
Příklad 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); } } Otestujte to hned Výstup:
Group 0 is Group 1 s My name is Khan and m not a terrerist.
Příklad 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')); } } } } Otestujte to hned Výstup:
Hello world