Я пытаюсь выяснить, как написать простое регулярное выражение, которое будет выделять символы новой строки, только если они появляются в начале или конце некоторых данных при сохранении новой строки.
В приведенном ниже примере строки 1 и 14 - это новые строки. Это единственные две строки, которые я пытаюсь выделить, когда они появляются в начале и в конце данных.
import regex as re
from colorama import Fore, Back
def red(s):
return Back.RED + s + Back.RESET
with open('/tmp/1.py', 'r') as f:
data = f.read()
print(
re.sub(r'(^\n|\n$)', red(r'\1'), data)
)
В открытом выражении данные имеют тот же контент, что и приведенный выше пример.
В приведенном выше примере, это результат, который я получаю:
![enter image description here](https://i.stack.imgur.com/qWsuO.png)
Как видно, отсутствует красная подсветка в строке 1 и охватывает весь путь в строке 14. Мне бы хотелось, чтобы цвет появлялся только один раз на символ новой строки.