##
use strict;
use warnings;
my @strings = qw{
a000000000b
a0a0000b00b
a0000ab000b
a00000000ab
};
print
m{^a(?!.*ab.).*b$}
? qq{$_: matched\n}
: qq{$_: unmatched\n}
for @strings;
##
##
a000000000b: matched
a0a0000b00b: matched
a0000ab000b: unmatched
a00000000ab: matched