http://www.perlmonks.org?node_id=623444


in reply to Re: swapping PIPE for comma in CSV file
in thread swapping PIPE for comma in CSV file

A few people missed this (myself included). You have to split on a pair of double quotes or no quotes at all. There's the field with commas in it which you can't replace with a pipe so a simple regex or split/join won't work (at least without a massive regex on the split).
  • Comment on Re^2: swapping PIPE for comma in CSV file

Replies are listed 'Best First'.
Re^3: swapping PIPE for comma in CSV file
by girarde (Hermit) on Jun 26, 2007 at 16:59 UTC
    Right, but I'm splitting on the 'quote, comma, quote' pattern, so embedded commas sail through. You can split on a pattern, although join wants a string.
      But what about the quote-comma-numbers transition?
        Rats, I missed that. Time for an expression.
        Also time to verbally abuse the people who decided to provide a comma delimited file with commas in the data "occasionally". I usually ask for delimitation with backticks.