fork(3) download
my @data = ;

foreach (@data)
{
  my @columns = (/(?:(?<=^")|(?<=",")).*?(?:(?="\s*$)|(?=","))/g);
  foreach (@columns)
  {
    print "'$_'\n";
  }
  print "\n";
}

__DATA__
"ID-1","A "B"", C, D, E","Today"
"ID-2","A, B, C, D, E,F","Yesterday" 
"ID-3","A and nothing else","Today"
Success #stdin #stdout 0s 4552KB
stdin
Standard input is empty
stdout
'ID-1'
'A "B"", C, D, E'
'Today'

'ID-2'
'A, B, C, D, E,F'
'Yesterday'

'ID-3'
'A and nothing else'
'Today'