Regular expression for parsing CSV in PHP

Posted by Discodancer on Stack Overflow See other posts from Stack Overflow or by Discodancer
Published on 2009-01-22T19:34:33Z Indexed on 2010/05/01 1:07 UTC
Read the original article Hit count: 285

Filed under:
|
|

I already managed to split the CSV file using this regex: "/,(?=(?:[^\"]\"[^\"]\")(?![^\"]\"))/"

But I ended up with an array of strings that contain the opening and ending double quotes. Now I need a regex that would strip those strings of the delimiter double quotes.

As far as I know the CSV format can encapsulate strings in double quotes, and all the double quotes that are already a part of the string are doubled. For example:

My "other" cat

becomes

"My ""other"" cat"

What I basically need is a regex that will replace all sequences of N doublequotes with a sequence of (N/2 - rounded down) double quotes.

Or is there a better way ? Thanks in advance.

© Stack Overflow or respective owner

Related posts about regex

Related posts about csv