假设我使用正则表达式r'\n[^ \t]+:'
来填充句子。
它与me@locmsglhost\r\nSubject: injected subject
和TARDES.\nLES MANDO LOS REPORTES DE JL\nNOTA: SIN PAROS
之类的字符串匹配。
所以我只想用空格替换字符串中所有正则表达式的开头\n
。
我尝试了几种方法,但是它们不能正确处理不同的输入。
答案 0 :(得分:1)
您可以使用反向引用(\1
):
>>> import re
>>> s = 'me@locmsglhost\r\nSubject: injected subject'
>>> re.sub(r'\n([^ \t]+:)', r' \1', s)
'me@locmsglhost\r Subject: injected subject'
或前瞻性断言((?=...)
):
>>> re.sub(r'\n(?=[^ \t]+:)', ' ', s)
'me@locmsglhost\r Subject: injected subject'