use Modern::Perl; use Text::CSV; my $csv = Text::CSV->new( { eol => "\n" } ) or die "Cannot use CSV: " . Text::CSV->error_diag(); open my $fh, '>', './new.csv' or die "new.csv: $!"; while () { chomp; $csv->print( $fh, [ split /;;/ ] ); } close $fh or die "new.csv: $!"; __DATA__ abd;;sasa;;trre,dsa;;sdas;;dsss 123;;456,789;;include some spaces and ; once;;55555+;;abc