正規表示式匹配電子郵箱或者電子郵件位址

2022-04-25 16:06:04 字數 969 閱讀 9228

正則匹配表示式:/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]([\.][a-z])?$/i

國際網域名稱格式如下:網域名稱由各國文字的特定字符集、英文本母、數字及「-」(即連字元或減號)任意組合而成, 但開頭及結尾均不能含有「-」,「-」不能連續出現 。 網域名稱中字母不分大小寫。網域名稱最長可達60個位元組(包括字尾.com、.net、.org等)。 

說明:①/內容/i 構成乙個不區分大小寫的正規表示式;^ 匹配開始;$ 匹配結束。

②[a-z] e-mail字首必需是乙個英文本母開頭

③([a-z0-9]*[-_]?[a-z0-9]+)* 和_a_2、aaa11、_1_a_2匹配,和a1_、aaff_33a_、a__aa不匹配,如果是空字元,也是匹配的,*表示0個或者多個。

④*表示0個或多個前面的字元.

⑤[a-z0-9]* 匹配0個或多個英文本母或者數字;[-_]? 匹配0個或1「-」,因為「-」不能連續出現。

⑥[a-z0-9]+ 匹配1個或多個英文本母或者數字,因為「-」不能做為結尾

⑦@ 必需有個有@

⑧([a-z0-9]*[-_]?[a-z0-9]+)+ 見上面([a-z0-9]*[-_]?[a-z0-9]+)*解釋,但是不能為空,+表示乙個或者為多個。

⑨[\.] 將特殊字元(.)當成普通字元;[a-z] 匹配2個至3個英文本母,一般為com或者net等。

⑩([\.][a-z])? 匹配0個或者1個[\.][a-z](比如.cn等) 我不知道一般.com.cn最後部份是不是都是兩位的,如果不是請修改為 

下面以php為例進行說明:

< ?php

if (ereg(「/^[a-z]([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]([\.][a-z])?$/i; 」,$email))

else

?> 

php 正規表示式判斷電子郵箱的使用方法

正規表示式 下面表示的郵箱的匹配規則 a za z0 9 a za z0 9 a za z0 9.email1 shrimpking001 163.com 乙個完整的電子郵箱位址 email2 the email is shrimp002 163.com 內容中含有電子郵箱 email3 this ...

電子郵件正規表示式

電子郵箱賬號規則 滿足絕大部分的郵箱賬號規則 a za z0 9 a za z0 9 a za z0 9 a za z0 9 a za z0 9 a za z0 9 a za z0 9 a za z0 9 a za z0 9 a za z0 9 1.電子郵箱支援字母,數字,下劃線,減號和英文句點 還...

Python 正規表示式匹配163郵箱

import re def main while true 如果在正規表示式中用到了某些普通的字元,比如?等,僅僅需要在他們前面新增乙個反斜槓進行兼收 ret re.match r a za z0 9 163 com email if ret print s符合要求 email return els...