print {$outfile} join ', ', map { qq|"$_"| } map { escape_quotes( $_ ) } @dataRow{qw( field1 field2 field3 field4 field5 ) }; ... sub escape_quotes { my $string = shift; # a negative-lookbehind may be appropriate # to prevent double-escaping $string = s/"/\\"/g; return $string; }