Как изменить символ перед определенным словом
Задача: Перед каждым словом BACKSPACE в файле нужно убрать 1 символ.
К примеру: в файле следующие данные: Hello user BACKSPACE .
После выполнения программы, должно получиться: Hello use BACKSPACE .
with open('log.txt', 'r') as f:
old_data = f.read()
new_data = old_data.replace(' BACKSPACE ', 'на_что_меняем')
with open('log.txt', 'w') as f:
f.write(new_data)
Ответы (1 шт):
Автор решения: Евгений
→ Ссылка
Если вам нужно во всём тексте убрать букву перед ' BACKSPACE', используйте регулярные выражения:
import re
s = ""
with open('log.txt') as f:
s = f.read()
# если после BACKSPACE тоже должен быть пробел - в первых кавычках добавляем \s, а во вторых - пробел
# т.е. re.sub(r".\sBACKSPACE\s", " BACKSPACE ", s)
s = re.sub(r".\sBACKSPACE", " BACKSPACE", s)
with open('low.txt', 'w') as f:
f.write(s)