The end(int group) method of MatchResult Interface is used to get the offset after the end index of the match result already done, from the specified group.
Syntax:
public int end(int group)
Parameters: This method takes a parameter group from which the offset after the end index of the matched pattern is required.
Return Value: This method returns the offset after the end index 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 group.
Below examples illustrate the MatchResult.end() method:
Example 1:
// Java code to illustrate end() 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 last index of match result
System.out.println(matcher.end( 1 ));
}
}
} |
Output:
5 13
Example 2:
// Java code to illustrate end() 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
= "GFG FGF GFG" ;
// Create a matcher for the input String
MatchResult matcher
= pattern
.matcher(stringToBeMatched);
while (((Matcher)matcher).find()) {
// Get the last index of match result
System.out.println(matcher.end( 0 ));
}
}
} |
Output:
1 3 6 9 11