2016-04-17 27 views
1

如果我輸入表單[email protected]的電子郵件地址,我只想搜索'@',那麼爲什麼這段代碼不工作。 ``」使用常規exp。在python

emailAddress=raw_input() 
pat = '@' 
match = re.match(pat2,emailAddress) 
print match.group() 

```

+1

如果您的代碼確實是上面顯示的代碼,那麼您使用的是「pat2」而不是pat。 – Alex

+0

如果你只是想檢查'emailAddress'中是否有'@',只需在emailAddress中輸入'''' –

回答

2

假設pat/pat2問題只是一個錯字,你想用re.search而不是re.matchsearch搜索整個字符串進行匹配,而match只搜索從字符串開頭開始的匹配項。

+0

真正的工作電子郵件可能不會被'[\ w] + @ [\ w] + \。[w] +',所以你會更安全一些驗證服務器,或者更好的是發送確認郵件。此外,你的代碼只是檢查是否存在'@',它將返回True,例如'a @ a @ a @ a',這顯然不是你可以發送郵件的地方。 – Synedraacus