#!/usr/bin/perl -w use strict; use warnings; use Text::CSV; my $csv = Text::CSV->new(); while (defined (my $line = )) { next if ! $csv->parse ($line); my @fields = $csv->fields(); $fields[2] = join ' ', reverse split /,\s*/, $fields[2]; $csv->print (*STDOUT, \@fields); print "\n"; } __DATA__ -###.####,##.###,"Doe, John & Jane","### Main St","Town, State 13370",,, -###.####,##.###,"Doe, John","### Main St","Town, State 13370",,, #### -###.####,##.###,"John & Jane Doe","### Main St","Town, State 13370",,, -###.####,##.###,"John Doe","### Main St","Town, State 13370",,,