我正在使用NodeJS傳輸csv文件並需要處理每一行。我還沒有找到一個節點csv解析器模塊,它在雙引號內正確地支持換行符。節點正則表達式匹配換行符而不是換行符之間的換行符
因此我使用的是split模塊,需要一個正則表達式來分割上會發現僅引號內的換行字符不。
類似/(\r?\n)/
發現換行符,但我怎麼能省略雙引號字符串內的換行符?
例如輸入(注意第二行中的換行):
1,2,3,"foo bar baz",4,5
2,2,3,"foo bar
baz",4,5
3,2,3,"foo bar baz",4,5
inputCsvStream.pipe(split(/regex-for-newline-not-in-quotes/)).on('data', (line) => {
// do something with proper csv line
});
謝謝!
感謝您的想法。我曾嘗試'csv-parse'。不幸的是,它似乎沒有在雙引號內正確處理換行符。它分裂他們的線。除非我錯過了一些設置或選項。 –