MatchResult start(int) method in Java with Examples

Last Updated : 27 Nov, 2018
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
// 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));
        }
    }
}
Output:
4
12
Example 2: Java
// 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));
        }
    }
}
Output:
0
2
4
6
8
10
12
14
16
18
=
Comment