Поиск всех совпадающих подстрок, а не только «самой расширенной»

Код

String s = "y z a a a b c c z";
Pattern p = Pattern.compile("(a )+(b )+(c *)c");
Matcher m = p.matcher(s);
while (m.find()) {
    System.out.println(m.group());
}

принты

a a a b c c

какой правильный.

Но логически подстроки

a a a b c
a a b c c
a a b c
a b c c
a b c

также соответствовать регулярному выражению.

Итак, как я могу заставить код найти и эти подстроки, то есть не только наиболее расширенную , но и ее дочерние ?

14
задан sp00m 27 June 2012 в 14:21
поделиться