regex
Matcher end example
With this example we are going to demonstrate how to use Matcher.end() API method to get the offset after the last character matched against a pattern. In short, to use Matcher.end() API method you should:
- Compile a String regular expression to a Pattern, using
compile(String regex)API method of Pattern. - Use an initial String to be matched against the Pattern.
- Use
matcher(CharSequence input)API method of Pattern to create a Matcher that will match the given String input against this pattern. - Find the first subsequence of the input sequence that matches the pattern, using
find()API method of Matcher. - Get the offset after the last character matched, with
end()API method of Matcher. - Find the next subsequence of the input sequence that matches the pattern and get the offset after the last character matched.
Let’s take a look at the code snippet that follows:
package com.javacodegeeks.snippets.core;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatcherEnd {
public static void main(String args[]) {
String str = "My name is Bond. James Bond.";
String mHelper[] = { "
^",
"
^" };
Pattern pattern = Pattern.compile("Bond");
Matcher m = pattern.matcher(str);
m.find();
int end = m.end();
System.out.println(str);
System.out.println(mHelper[0] + end);
m.find();
int next = m.end();
System.out.println(str);
System.out.println(mHelper[1] + next);
}
}
Output:
My name is Bond. James Bond.
^15
My name is Bond. James Bond.
^27
This was an example of Matcher.end() API method in Java.

