при попытке сделать это с помощью регулярного выражения, он так и делает < но новый символ съедает следующий
пример:
Код: Выделить всё
import re
string = 'delivery - options (1 of 3)'
markdown_pattern = re.compile("(?P[\'*-_{}\[\]\(\)#+-.!]).")
result = markdown_pattern.sub(r'\\\g', string)
print(result)
print(len(string))
print(len(result))
Код: Выделить всё
delivery \-options \( of \3
Код: Выделить всё
delivery \- options \(1 of 3\)
Я видел, как re.sub делает строки короче, но думал, что это может их удлинить
Подробнее здесь: https://stackoverflow.com/questions/792 ... -with-more