my @array_set; my $array; while () { if (/^>DATA SET (\d+)) { $array= \$array_set[$1]; } else { push @$array, $_; } }