use Text::CSV qw( ); my $content = ...; my $csv = Text::CSV->new(); open my $csv_fh, '<', \$content; while (<$csv_fh>) { my $status = $csv->parse($_) or die; my @fields = $csv->fields(); ... }