第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

使用正則表達(dá)式驗(yàn)證電子郵件

使用正則表達(dá)式驗(yàn)證電子郵件

守著星空守著你 2023-03-08 10:43:29
我有一個(gè)電子郵件驗(yàn)證正則表達(dá)式。我想要實(shí)現(xiàn)的是,如果任何電子郵件與正則表達(dá)式模式不匹配,我只想顯示那些與正則表達(dá)式匹配的字符并刪除不匹配的字符。pattern=r'(^a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)'例如:如果我的驗(yàn)證失敗是因?yàn)榇嬖凇?#39;”和“?” 在電子郵件中,那么我建議的電子郵件應(yīng)該包含除這兩個(gè)字符之外的所有字符。如果輸入與模式不匹配,則:input="t'ogfni?fyevdsj@hmi.dev"    expected output = "togfnifyevdsj@hmi.dev"我怎樣才能做到這一點(diǎn)?目前我正在使用,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)但是,這給了我一個(gè)空白輸出。除此之外,這種方法的另一個(gè)問(wèn)題是,如果電子郵件輸入有 2'@',它不會(huì)檢測(cè)到異常誰(shuí)能建議在這里進(jìn)行的正確方法是什么?
查看完整描述

1 回答

?
狐的傳說(shuō)

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊

如果您假設(shè)字符串中至少有一個(gè)并且在它之后至少有一個(gè),那么在您的主要驗(yàn)證正則表達(dá)式失敗時(shí),您可以捕獲電子郵件的三個(gè)部分,并從中刪除所有不需要的字符并連接回一個(gè)“干凈的@” .“ 電子郵件:


import re

pattern = r'^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+$'

text = "t'ogfni?fyevdsj@hmi.dev"

def repl(x):

    return "{}@{}.{}".format(re.sub(r'[^a-zA-Z0-9_.+-]+', '', x.group(1)),

        re.sub(r'[^a-zA-Z0-9.-]+', '', x.group(2)),

        re.sub(r'[^a-zA-Z0-9.-]+', '', x.group(3)))


if re.fullmatch(pattern, text):

    print("Valid email: {}".format(text))

else:

    email = re.sub(r"(.*)@(.*)\.(.*)", repl, text)

    print("Filtered email: {}".format(email))

查看Python 演示,輸出為Filtered email: togfnifyevdsj@hmi.dev.


還有另一種清理部分的方法@:拆分.并刪除所有字符[^a-zA-Z0-9-]+中匹配的所有字符,然后將它們連接回去:


def repl(x):

    return "{}@{}".format(re.sub(r'[^a-zA-Z0-9_.+-]+', '', x.group(1)),

        ".".join([re.sub(r'[^a-zA-Z0-9-]+', '', y) for y in x.group(2).split('.')]) )

請(qǐng)參閱此 Python 演示。



查看完整回答
反對(duì) 回復(fù) 2023-03-08
  • 1 回答
  • 0 關(guān)注
  • 123 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)