package p19_napisy.regex;

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

public class Przyklad2 {

	public static void main(String[] args) {
		boolean wynik;
		
		Pattern pattern = Pattern.compile("ab?c*d+");

		Matcher matcher = pattern.matcher("abcd");
		wynik = matcher.matches();
		System.out.println(wynik);
		
		matcher.reset("abcccddd");
		wynik = matcher.matches();
		System.out.println(wynik);
		
		matcher.reset("XXabcdbubaaccdddddsdkfjabdd");
		wynik = matcher.matches();   // sprawdza całość
		System.out.println(wynik);
		
		// Matcher ma wewnętrzy stan, w którym pamięta co ostatnio znalezł i kolejne wywołanie find przechodzi do drugiego wystąpienia zworca w tekście
		int gdzie, end;
		while(matcher.find()) {
			gdzie = matcher.start();
			end = matcher.end();
			System.out.println("Znalazłem od "+gdzie + " do " + end
					+ "  napis: " + matcher.group());
			gdzie ++;
		}
	}
}





