for (qw[ ab abb abbb aabb aabbb aabbbb a_abb a_abbb ]) { m[ (? (a+) (?{ length($^N) }) (b+) ) (?(?{ length($^N)-$^R != 1 })(?!)) ]x and print("$_\n"); } #### abb aabbb a_abb