>perl -wMstrict -MData::Dumper -le "my $str = q{1,2,3,4,'fine', '', 'day','today',}; my @f = grep defined, $str =~ m{ (\d+) | ' ([^']*) ' }xmsg ; print Dumper \@f; " $VAR1 = [ '1', '2', '3', '4', 'fine', '', 'day', 'today' ];