Mega Code Archive

 
Categories / Java Tutorial / Development
 

Matcher Start and End

import java.util.regex.Matcher; import java.util.regex.Pattern; public class MainClass {   public static void main(String[] args) {     String[] input = new String[] { "Java has regular expressions in 1.4",         "regular expressions now expressing in Java", "Java represses oracular expressions" };     Pattern p1 = Pattern.compile("re\\w*"), p2 = Pattern.compile("Java.*");     for (int i = 0; i < input.length; i++) {       System.out.println("input " + i + ": " + input[i]);       Matcher m1 = p1.matcher(input[i]), m2 = p2.matcher(input[i]);       while (m1.find())         System.out.println("m1.find() '" + m1.group() + "' start = " + m1.start() + " end = "             + m1.end());     }   } } /* */ input 0: Java has regular expressions in 1.4 m1.find() 'regular' start = 9 end = 16 m1.find() 'ressions' start = 20 end = 28 input 1: regular expressions now expressing in Java m1.find() 'regular' start = 0 end = 7 m1.find() 'ressions' start = 11 end = 19 m1.find() 'ressing' start = 27 end = 34 input 2: Java represses oracular expressions m1.find() 'represses' start = 5 end = 14 m1.find() 'ressions' start = 27 end = 35