python替换字符串忽略换行

时间:2019-02-06 11:12:08

标签: python string python-2.7 replace

例如,

str="dddabc
d
e
xxxx
123
345"

,想将"abcde"替换为null。 新的str必须是

"ddd
xxxx
123
345"

最简单的方法是什么?

如果我放下新行,新字符串将是dddxxxx123345,那是错误的

这需要在Linux上才能使用,\r\n也许

2 个答案:

答案 0 :(得分:3)

使用正则表达式re.sub

  

返回通过替换最左边的非重叠而获得的字符串   替换repl在字符串中出现模式的情况。如果   找不到模式,字符串不变。代表可以是   字符串或函数;如果是字符串,则其中的任何反斜杠都将转义   已处理。

import re
st="""dddabc
d
e
xxxx
123
345
"""
rep="abcde"
print(re.sub(r'\n?'.join(rep),r'',st))

输出

ddd
xxxx
123
345

答案 1 :(得分:1)

使用正则表达式:

new_str = re.sub('a(\s)*b(\s)*c(\s)*d(\s)*e(\s)*', "", str)