java.util.regex.Matcher.regionEnd() Method



The java.util.regex.Matcher.regionEnd() method reports the end index (exclusive) of this matcher's region. The searches this matcher conducts are limited to finding matches within regionStart (inclusive) and regionEnd (exclusive).


Following is the declaration for java.util.regex.Matcher.regionEnd() method.

public int regionEnd()

Return Value

the ending point of this matcher's region.


The following example shows the usage of java.util.regex.Matcher.regionEnd() method.

package com.tutorialspoint;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class MatcherDemo {
   private static String REGEX = "(a*b)(foo)";
   private static String INPUT = "aabfooaabfooabfoob";
   private static String REPLACE = "-";
   public static void main(String[] args) {
      Pattern pattern = Pattern.compile(REGEX);
      // get a matcher object
      Matcher matcher = pattern.matcher(INPUT);
      matcher = matcher.region(0, 10);
      while(matcher.find()) {
         //Prints the offset after the last character matched.
         System.out.println("First Capturing Group, (a*b) Match String end(): "+matcher.end());    
      System.out.println("regionEnd(): "+matcher.regionEnd());    

Let us compile and run the above program, this will produce the following result −

First Capturing Group, (a*b) Match String end(): 6
regionEnd(): 10