regex
Matcher reset example
This is an example of how to use Matcher.reset() API method to reset a Matcher, by discarding all of its explicit state information and setting its append position to zero. The matcher’s region is set to the default region, which is its entire character sequence. Resetting a matcher implies that you should:
- Compile a String regular expression to a Pattern, using
compile(String regex)API method of Pattern. - Use
matcher(CharSequence input)API method of Pattern to create a Matcher that will match the given String input against this pattern. - Use
find()andmatch()API methods of Matcher to get the matches of the input with the pattern. - Use
reset()API method of Matcher to reset tha matcher and thenfind()andmatch()API methods of Matcher to get the matches of the input with the pattern again.
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 MatcherReset {
public static void main(String args[]) {
function();
}
public static void function() {
Pattern pattern = Pattern.compile("\\d");
Matcher matcher = pattern.matcher("01234");
while (matcher.find()) {
System.out.println("" + matcher.group());
}
matcher.reset();
System.out.println("After resetting the Matcher");
while (matcher.find()) {
System.out.println("" + matcher.group());
}
}
}
Output:
0
1
2
3
4
After resetting the Matcher
0
1
2
3
4
This was an example of Matcher.reset() API method in Java.

