我有一个包含“\n”和“\r”的文本传递到下一行,只有“\”我应该删除 这是一个文本示例
text="here \n is \r an example\ of a text\ to test"
我试过这条线
text=text.replace("\\","")
但它删除了所有的“\”而我只想保留“\n”和“\r”
答案 0 :(得分:3)
在您当前的字符串中,\r
和 \n
是回车符和换行符,因此如果您使用 text=text.replace("\\","")
,它将替换反斜杠,输出将是:
here
an example of a text to test
如果你想保持这样,你可以使用一个以 r"
开头的原始字符串,当后面没有直接跟 /
或 {{1} 时只替换 r
} 使用负前瞻。
n
输出
import re
text = r"here \n is \r an example\ of a text\ to test"
print(text)
text = re.sub(r"\\(?![rn])", "", text)
print(text)
答案 1 :(得分:0)
您可以使用前瞻来解决这个问题:
text = re.sub("\\(?=[^nr]*)", "", text)