I would like to find a regex that will pick out all commas that fall outside quote sets.
For example:
'foo' => 'bar', 'foofoo' => 'bar,bar'
This would pick out the single comma on line 1, after 'bar',
I don’t really care about single vs double quotes.
Has anyone got any thoughts? I feel like this should be possible with readaheads, but my regex fu is too weak.
This will match any string up to and including the first non-quoted ‘,’. Is that what you are wanting?
If you want all of them (and as a counter-example to the guy who said it wasn’t possible) you could write:
which will match all of them. Thus
replaces all the commas not inside quotes with semicolons, and produces:
If you need it to work across line breaks just add the m (multiline) flag.