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.