我正在 C# 中逐行检查
示例数据:
bob jones,123,55.6,,,"Hello , World",,0
jim neighbor,432,66.5,,,Andy "Blank,,1
john smith,555,77.4,,,Some value,,2
Regex to pick commas outside of quotes不解析第二行,它是最接近的。
最佳答案
退后一步,大吃一惊!
这是您寻求的正则表达式:(?!\B"[^"]*),(?![^"]*"\B)
这是一个演示:
regex101 demo
"
您插入的没有右引号。 ,r"a string",10
因为边缘的字母"
将创建一个词边界,而不是一个非词边界。 替代版本
(".*?,.*?"|.*?(?:,|$))
这将匹配内容和逗号,并与充满标点符号的值兼容
regex101 demo
关于正则表达式查找逗号不在引号内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21105360/