/*
Date 			: 		10 October 2013
Author			:		Shivam Tiwari [shivamtiwari1011@gmail.com]
Organization	:		http://m...content-available-to-author-only...t.in/
Description		:		http://m...content-available-to-author-only...t.in/2013/10/matching-word-in-string-java.html
*/

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

public class Main{
	public static void main(String[] args){
		
		//Declaring all required variables
		String inputString, inputRegex;
		int matchCount = 0;
		
		//create a new scanner object
		Scanner scannerObj = new Scanner(System.in);
		
		System.out.println("Enter your string :");
		
		//get the inputString
		inputString = scannerObj.nextLine();
		
		System.out.println("Read string : " + inputString);

		
		System.out.println("Enter your regex :");
		
		//get the inputRegex
		inputRegex = scannerObj.nextLine();
		
		System.out.println("Read regex : " + inputRegex);
		
		//pattern object
		Pattern patternObj = Pattern.compile(inputRegex);
		
		//matcher object
       	Matcher matcherObj = patternObj.matcher(inputString); 
       	
       	//run find() method
       	while(matcherObj.find()) {
         	matchCount++;
         	System.out.println("Match #" + matchCount);
         	System.out.println("Starting at : " + matcherObj.start());
         	System.out.println("Ending at : " + matcherObj.end());
      }
	}
}