Perl регулярное выражение для извлечения многострочных блоков

У меня есть такой текст:

00:00 материал
00:01 еще кое-что
многострочный
и собирается
00:02 еще
имеют

Итак, у меня нет конца блока, только начало нового блока.

Я хочу рекурсивно получить все блоки:

1 = 00:00 материал
2 = 00:01 еще кое-что
многострочный
и собирается

и т.д.

Следующий код дает мне только это:

$VAR1 = '00:00';
$VAR2 = '';
$VAR3 = '00:01';
$VAR4 = '';
$VAR5 = '00:02';
$VAR6 = '';

Что я делаю неправильно?

my $text = '00:00 stuff
00:01 more stuff
multi line
 and going
00:02 still 
have
    ';
my @array = $text =~ m/^([0-9]{2}:[0-9]{2})(.*?)/gms;
print Dumper(@array);
8
задан dsolimano 14 May 2012 в 12:31
поделиться