use strict; use warnings; my $str="30 30 36 33 36 36 36 33 36 34 26 24 21 17 17 23 27 27 31 31 3 +4 33 33 33 36 36 37 38 38 38 38 38 35 40 34 34 34 31 37 36 37 37 40 4 +0 49 40 40 40 40 40 40 40 40 33 30 30 30 30 30 42 45 45 45 45 45 49 4 +2 42"; $str=~s/\s*\+//gs; # get rid of linebreaks and these useless pluses my @array=split(/\s+/,$str); # (*) while ( my @chunk = splice(@array,0,20) ) { print "@chunk\n"; }