我在处理一些字符串时遇到困难。我的字符串看起来像"absed\".'\"xgtwa@aiuyr.com"
,但我知道如何将奇怪的模式\".'\"
更改为.
。
我使用了这样的代码:
s = re.sub(r'\".'\"', '.', s)
但它返回了SyntaxError: unexpected character after line continuation character
。
输出字符串应为"absed.xgtwa@aiuyr.com"
。输入只是找到电子邮件地址。例如,对于文件中的一行(x
),该行为To: absed.xgtwa@aiuyr.com
,我的“输入”仅为x.split(":")[1]
。 BTW,在其他文件中,它工作得很好。但有时它会发生这样的问题。
任何帮助都会感激不尽!
答案 0 :(得分:2)
您使用的是单引号'
,s
包含单个引号,该引号不是转义字符\'
。
将s = re.sub(r'\".'\"', '.', s)
更改为s = re.sub(r"\".'\"", ".", s)
。
import re
s = "absed\".'\"xgtwa@aiuyr.com"
print("Pre-regex:\ts = %s" % s)
s = re.sub(r"\".'\"", ".", s)
print("Post-regex:\ts = %s" % s)
这样输出变为:
Pre-regex: s = absed".'"xgtwa@aiuyr.com
Post-regex: s = absed.xgtwa@aiuyr.com
答案 1 :(得分:1)
它不是一个单行,但我相信它完成了工作。
s="absed\".'\"xgtwa@aiuyr.com"
s=s.replace('\"','')
s=s.replace("'",'')
s=s.replace('\"','')
print(s)
结果
absed.xgtwa@aiuyr.com