/* package whatever; // don't place package name! */

import java.util.regex.*;

class Ideone
{
	public static void main (String[] args) throws java.lang.Exception
	{
		Pattern p = Pattern.compile("(?=(a?bc))(?=(ab?c))(?=(abc?)).*");
		Matcher m = p.matcher("abc");
		if (m.matches()) {
			System.out.printf("%s::<%s> <%s> <%s>%n", m.group(), m.group(1), m.group(2), m.group(3));
		}
	}
}