Удалить совпадения регулярных выражений из файла в python? [Дубликат]

21
задан csteifel 24 December 2013 в 20:24
поделиться

1 ответ

Здесь вам нужно использовать raw-string , чтобы обратная косая черта не обрабатывалась как escape-символ:

>>> import re
>>> fileText = '<text top="52" left="20" width="383" height="15" font="0"><b>test</b></text>'
>>> fileText = re.sub("<b>(.*?)</b>", r"\1", fileText, flags=re.DOTALL)
>>> fileText
'<text top="52" left="20" width="383" height="15" font="0">test</text>'
>>>

Обратите внимание, что "\1" было изменено на r"\1". Хотя это очень небольшое изменение (один символ), он имеет большой эффект. См. Ниже:

>>> "\1"
'\x01'
>>> r"\1"
'\\1'
>>>
45
ответ дан iCodez 21 August 2018 в 13:54
поделиться
  • 1
  • 2
    Протестировал его и в интерпретаторе, там он работает. Он не работает в исполняемом файле tho. Очень странно: P – user 24 December 2013 в 20:37
Другие вопросы по тегам:

Похожие вопросы: