Регулярные выражения — 3. Квантификаторы
Как и прежде, после любого символа в регулярном выражении допустимо указывать квантификатор — то есть некую конструкцию, которая уточняет, сколько раз символ может встречаться в тестируемой строке. Традиционные односимвольные квантификаторы *, + и ? работают так же, как в Perl 5.
Из примера parrot/languages/perl6/t/rx/basic_3.p6 можно узнать о новой форме интервального квантификатора, который устанавливает границы интервала числа повторений. В Perl 5 для этого служили фигурные скобки. В Perl 6 используются угловые:
Обратите внимание на две формы записи:
sub main() {
my $s = 'accaacaacaaba';
print "ok 1\n" if $s =~ /aca*/;
print "ok 2\n" if $s =~ /aca+/;
print "ok 3\n" if $s =~ /aca?/;
print "ok 4\n" if $s =~ /aca<2>/;
print "ok 5\n" if $s =~ /aca<0,2>/;
print "ok 6\n" if $s =~ /aca<2,1000>/;
my ($n, $m) = (2, 34);
print "ok 7\n" if $s =~ /aca<2,$m>/;
print "ok 8\n" if $s !~ /aca<3,$m>/;
print "ok 9\n" if $s =~ /abb?/;
print "ok 10\n" if $s !~ /abb+/;
print "ok 11\n" if $s =~ /abb*/;
}20 февраля 2004