#!/usr/bin/perl -w use strict; use Dumpvalue; my $dumper = new Dumpvalue; my @split_elms = map{chomp; my $line = $_; my @data = map{my $substr = $_; $substr =~ s/,/:innerc:/g; $line =~ s/\Q$_\E/$substr/;} $line =~ /("[^"]*")/g; @data = map{$_ =~ s/:innerc:/,/g; $_} split(/,/,$line); \@data;} ; $dumper->dumpValue(\@split_elms); exit; __DATA__ "one"," one,two",3,"a like b" 0,0,0,0