我有一个电子邮件验证正则表达式。我想要实现的是,如果任何电子邮件与正则表达式模式不匹配,我只想显示那些与正则表达式匹配的字符并删除不匹配的字符。
pattern=r'(^a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)'
例如:如果我的验证失败是因为存在“'”和“?” 在电子邮件中,那么我建议的电子邮件应该包含除这两个字符之外的所有字符。如果输入与模式不匹配,则:
input="t'ogfni?fyevdsj@hmi.dev"
expected output = "togfnifyevdsj@hmi.dev"
我怎样才能做到这一点?目前我正在使用,
z=list(input)
sp=[]
for j in range(len(z)):
result=re.findall(pattern,z[j])
if len(result)!=0:
sp.append(result[0])
output=''.join(sp)
但是,这给了我一个空白输出。除此之外,这种方法的另一个问题是,如果电子邮件输入有 2'@',它不会检测到异常
谁能建议在这里进行的正确方法是什么?
狐的传说
相关分类