В файле, открытом следующим образом:
with open(fullpath, "r", encoding="utf-8", errors="ignore") as f:
filedata = f.read()
Я пытаюсь удалить 2 новых строки перед любой строкой, содержащей 64 звездочки. например, заменить:
****************************************************************
на:
****************************************************************
Мой входной файл фактически имел случайные пробелы в некоторых пустых строках. Следующее регулярное выражение сопоставляет и удаляет одну новую строку:
filedata = re.sub(r"(\r\n|\n|\r)\*{64}",
"****************************************************************",
filedata)
, что приводит к:
****************************************************************
(обратите внимание, что в приведенном выше выводе есть две строки)
Носледующее не соответствует:
filedata = re.sub(r"(\r\n|\n|\r)(\r\n|\n|\r)\*{64}",
"****************************************************************",
filedata)
Кроме того, как может быть видно из моего кода, у меня возникают трудности с поиском способа определения аргумента repl как регулярного выражения. то есть использование r"\*{64}"
вместо строки из 64 звездочек не работает