my $data = "'Pugh.Pugh'.Barney.McGrew.Cuthbert.Dibble.Grub"; use Text::CSV_XS; my $csv = Text::CSV_XS->new({ sep_char => '.', quote_char => "'" }); $csv->parse($data) or die "Cannot parse data"; my @fields = $csv->fields;