The start(int group) method of MatchResult Interface is used to get the start index of the match result already done, from the specified group.
Syntax:
public int start(int group)
Parameters: This method takes a parameter group which is the group from which the start index of the matched pattern is required.
Return Value: This method returns the index of the first character matched from the specified group.
Exception: This method throws:
- IllegalStateException if no match has yet been attempted, or if the previous match operation failed.
- IndexOutOfBoundsException if there is no capturing group in the pattern with the given index.
Below examples illustrate the MatchResult.start() method:
Example 1:
// Java code to illustrate start() method import java.util.regex.*; public class GFG { public static void main(String[] args) { // Get the regex to be checked String regex = "(G*s)" ; // Create a pattern from regex Pattern pattern = Pattern.compile(regex); // Get the String to be matched String stringToBeMatched = "GeeksForGeeks" ; // Create a matcher for the input String MatchResult matcher = pattern .matcher(stringToBeMatched); while (((Matcher)matcher).find()) { // Get the first index of match result System.out.println(matcher.start( 1 )); } } } |
4 12
Example 2:
// Java code to illustrate start() method import java.util.regex.*; public class GFG { public static void main(String[] args) { // Get the regex to be checked String regex = "(G*G)" ; // Create a pattern from regex Pattern pattern = Pattern.compile(regex); // Get the String to be matched String stringToBeMatched = "GFGFGFGFGFGFGFGFGFG" ; // Create a matcher for the input String MatchResult matcher = pattern .matcher(stringToBeMatched); while (((Matcher)matcher).find()) { // Get the first index of match result System.out.println(matcher.start( 0 )); } } } |
0 2 4 6 8 10 12 14 16 18
=