c:\@Work\Perl\monks>perl -wMstrict -MData::Dump -le "my $s = ',1,,3,4,,,'; ;; my @ra = map { m{ \A \s* \z }xms ? undef : $_ } split ',', $s, -1; dd \@ra; " [undef, 1, undef, 3, 4, undef, undef, undef]