У меня есть CSV-подобный текстовый файл, который имеет около 1000 строк. Между каждой записью в файле находится длинная серия штрихов. Записи обычно заканчиваются на \ n, но иногда до конца записи стоит дополнительный \ n. Упрощенный пример:
"1x", "1y", "Hi there"
-------------------------------
"2x", "2y", "Hello - I'm lost"
-------------------------------
"3x", "3y", "How ya
doing?"
-------------------------------
Я хочу заменить лишние \ n пробелами, то есть объединить строки между тире. Я думал, что смогу сделать это (Python 2.5):
text = open("thefile.txt", "r").read()
better_text = re.sub(r'\n(?!\-)', ' ', text)
но это, кажется, заменяет все \ n, а не только те, за которыми не следует тире. Что я делаю не так?
Я задаю этот вопрос в попытке улучшить свои навыки регулярных выражений и понять ошибки, которые я допустил. Конечной целью является создание текстового файла в формате, который может использоваться конкретным макросом VBA для Word, который создает стилизованный документ Word, который затем будет перевариваться с помощью дружественной к Word CMS.