use warnings; use strict; my $line = q{"word1",word2,"word3,word4"}; use Text::CSV; my $csv = Text::CSV->new({binary=>1,auto_diag=>2}); $csv->parse($line); use Data::Dumper; print Dumper( [ $csv->fields() ] ); __END__ $VAR1 = [ 'word1', 'word2', 'word3,word4' ];