Perl regex - обьясните тупому :)

J
На сайте с 02.02.2009
Offline
53
362

perl -e 'my $x = q[Lambada 2004]; print $1."ок" if $x =~ m/([0-4]*)/;'

Почему он останавливается на первом же пустом символе? Разве при 0+ условии он не должен всё равно читать строку всю и пытаться хотя бы найти 0-4?:)

I
На сайте с 21.02.2008
Offline
117
#1

замените условие на $x =~ m/([0-4]+)/

J
На сайте с 02.02.2009
Offline
53
#2

Я знаю как сделать правильно :)

Это тестовое задание Яндекса - мне интересно, почему с условием * он не пытается прочесть всю строку :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий