Matcher region(int, int) method in Java with Examples
The region(int, int) method of Matcher Class restricts the region to be matched by the pattern. This region must be lesser than or same as the previous region, but not greater. Else it would lead to IndexOutOfBoundsException. This method returns a Matcher with the new matching region. Syntax:
public Matcher region(int startIndex, int endIndex)
Parameters: This method takes two parameters:
- startIndex which is the starting index of the new constrained region.
- endIndex which is the ending index of the new constrained region.
Return Value: This method returns a Matcher with the region, to be matched, constrained. Exception: This method throws IndexOutOfBoundsException if:
- startIndex or endIndex is less than zero,
- startIndex or endIndex is greater than the length of the input sequence,
- startIndex is greater than endIndex.
Below examples illustrate the Matcher.region() method: Example 1:
Java
import java.util.regex.*;
public class GFG {
public static void main(String[] args)
{
String regex = "(Geeks)";
Pattern pattern = Pattern.compile(regex);
String stringToBeMatched
= "GeeksForGeeks Geeks for Geeks Geek";
Matcher matcher
= pattern.matcher(stringToBeMatched);
System.out.println("Before changing region, "
+ " Groups found are: ");
while (matcher.find()) {
System.out.println(matcher.group());
}
System.out.println("\nAfter changing region, "
+ " Groups found are: ");
Matcher matcher1
= matcher.region( 0 , 10 );
while (matcher1.find()) {
System.out.println(matcher1.group());
}
}
}
|
Output:
Before changing region, Groups found are:
Geeks
Geeks
Geeks
Geeks
After changing region, Groups found are:
Geeks
Example 2:
Java
import java.util.regex.*;
public class GFG {
public static void main(String[] args)
{
String regex = "(FGF)";
Pattern pattern
= Pattern.compile(regex);
String stringToBeMatched
= "FGF GFG GFG FGF";
Matcher matcher
= pattern.matcher(stringToBeMatched);
System.out.println("Before changing region, "
+ " Groups found are: ");
while (matcher.find()) {
System.out.println(matcher.group());
}
System.out.println("\nAfter changing region, "
+ " Groups found are: ");
Matcher matcher1 = matcher.region( 0 , 5 );
while (matcher1.find()) {
System.out.println(matcher1.group());
}
}
}
|
Output:
Before changing region, Groups found are:
FGF
FGF
After changing region, Groups found are:
FGF
Reference: https://docs.oracle.com/javase/9/docs/api/java/util/regex/Matcher.html#region-int-int-
Last Updated :
30 Nov, 2022
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...