I'm trying to make a regex to match unescaped comma characters in a string.
The rule I'm looking for is "A comma not preceded by an even number of backslashes".
Test cases:
True    abc,abc
False   abc\,abc
True    abc\\,abc
False   abc\\\,abc
True    abc\\\\,abc
False   abc\\\\\,abc
I tried to use a negative look-behind: (?<!(\\+)), but Python gives me error: look-behind requires fixed-width pattern.
Try this regex: (?<!\\)(?:\\\\)*,
Explanation:
(?<!\\)    Matches if the preceding character is not a backslash
(?:\\\\)*  Matches any number of occurrences of two backslashes
,          Matches a comma
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With