Я использую NodeJS для потока CSV-файла и должен обрабатывать каждую строку. Я не нашел узел parser csv узла, который поддерживает символы новой строки в двойных кавычках должным образом.Узел regex для соответствия символу новой строки, но не новой строки между кавычками
Таким образом, я использую 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'. К сожалению, похоже, что он неправильно обрабатывает символы новой строки в двойных кавычках. Он разбивает линию на них. Если у меня не хватает некоторых настроек или параметров. –