У меня есть текстовый файл, который содержит больше или меньше абзацев. Текст - это не слова, а данные, разделенные запятыми; но это не так уж важно. Текстовый файл как бы разделен на разделы; могут быть разделы и подразделы. Разделение на разделы обозначается более чем одной новой строкой, а подразделы - новой строкой.
Итак, пример данных:
This is the, start of a, section
908690,246246246,246246
246246,246,246246
This is, the next, section,
sfhklj,sfhjk,4626246
4yw2,fdhds5juj,53ujj
Итак, приведенные выше данные содержат два раздела, каждый с тремя подразделами. Однако иногда между разделами может быть более одной пустой строки. Когда это происходит, я хочу преобразовать несколько символов новой строки, скажем \ n \ n \ n \ n
, только в \ n \ n
; Я думаю, что регулярное выражение, вероятно, способ сделать это. Мне также может потребоваться использовать другие стандарты новой строки, unix \ n
и windows \ r \ n
. Я думаю, что файлы, вероятно, содержат несколько кодировок конечной строки.
Вот регулярное выражение, которое я придумал; Ничего особенного:
Regex.Replace(input, @"([\r\n|\n]{2,})", Enviroment.NewLine + Enviroment.NewLine}
Во-первых, это хорошее решение для регулярных выражений? Я не очень хорошо разбираюсь в регулярных выражениях.
Во-вторых, я хочу разбить каждый раздел на элемент в массиве строк:
Regex.Split(input, Enviroment.NewLine + Enviroment.NewLine)
Есть ли способ объединить эти шаги?