如何解析包含引用和缺失值的csv字符串?

时间:2018-04-07 01:46:41

标签: node.js regex

我正在尝试使用nodejs中的regex解析逗号分隔值的字符串。我的字符串可以在引号内包含额外的逗号,并且可以包含缺失值。我想忽略引号内的逗号并考虑缺少的值!

角落案例:"red, blue,,, yellow, '1,345',"

答案:red blue null null yellow 1,345 null

我正在使用这段代码:

str.match(/('[^']+'|[^,]+)/g)

问题是它忽略了缺失的值。我该如何解决?

1 个答案:

答案 0 :(得分:0)

((?<=\"|\s|,)(?:[\w])*|(?<=')[,\w]*(?='))(?='\s*,|,|\")

这对输出似乎是可行的。 Demo