У меня есть большая строка (назовем это CSV-файлом, хотя на самом деле это не тот файл, сейчас это будет проще), который мне нужно проанализировать в коде C #.
Первый шаг процесса анализа разбивает файл на отдельные строки, просто используя объект StreamReader
и вызывая ReadLine
, пока он не пройдет через файл. Однако любая строка может содержать заключенный в одинарные кавычки литерал со встроенными символами новой строки. Мне нужно найти эти новые строки и временно преобразовать их в какой-нибудь токен или escape-последовательность, пока я не разделю файл на массив строк ... затем я смогу изменить их обратно.
Пример входных данных:
1,2,10,99,'Some text without a newline', true, false, 90
2,1,11,98,'This text has an embedded newline
and continues here', true, true, 90
Я мог бы написать весь код C #, необходимый для этого, используя string.IndexOf
, чтобы найти цитируемые разделы и искать в них новые строки, но я думаю, что Regex может быть лучшим выбором (то есть сейчас У меня две проблемы )