I’m trying to isolate a specific field in a SQL dump file so I can edit it but I’m not having any luck.
The regex I’m using is:
^(?:(?:'[^\r\n']*'|[^,\r\n]*),){6}('[^\r\n']*'|[^,\r\n]*)
Which is supposed to grab the seventh field and place it inside reference 1.
The trouble is that this is stumbling when ever it finds a comma inside a text field and counts the partial match as the allowable matches.
Eg. (1, ‘Title’, 1, 3, ‘2006-09-29’, ‘Commas, the bane of my regex’, ‘This is the target’, 2, 4) matches ” the bane of my regex'” instead of “‘This is the target'”.
Doh!
My fields weren’t just split with a comma. They were split with a comma followed by a space.
Correct RegEx is
Now it works.
Sorry to waste you time with this one. It was Beta’s response that got me thinking as it was the second alternation in play for all fields. The extra space forced it to use this option rather than the option enclosed within quotes.