[精讚] [會員登入]
37644

電子郵件郵址email的格式

電子郵件email的格式和規則

分享此文連結 //n.sfs.tw/10822

分享連結 電子郵件郵址email的格式@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 14:19:35 最後編修
2017-02-22 01:25:20 By 張○○
 

自動目錄

這近在做email 的檢查,也研究了 RFC,把email的格式整理:

Email 可用的字元

  一個 Email 主要由三部分組成:1 郵件帳號 (local mailbox part)、2 @ (at)、3 郵件網域 (the domain name)。

  符合規格的郵件帳號可由以下字元組成﹕a-z、A-Z、0-9、底線 (_) 和單點 (.)。其餘符號並未被所有的email伺服器所支援。

  符合規格的郵件網域只可由下列字元組成﹕a-z、A-Z、0-9、減號(-) 和單點 (.)。不分大小寫,其餘符號不可使用(可用IP當網域的寫法在此不討論,請參考[3])。

Email 的構成要素為何?

  其中要注意有幾點:

  (1) 郵件帳號是有區分大小寫,但是一般而言郵件主機是不理會大寫的帳號(不知道是不收件,還是把他當小寫看待,這需要證實),例如 sendmail 中預設是不理會大寫的帳號。為了避免困擾,盡量不使用大寫的帳號。

  (2) 網域不分大小寫

  (3) 網域最小組成單元是二個字節,例如 aaa.com 或是 mail.bbb.com。

  (4) 郵件帳號應該要以 a-z 0-9 開頭,不能用'.'作開頭。

  (5) 郵件帳號最多64字元,整個email字串最長255字元

php 中 email 的 regex?

參考php 官網中 Reno 的回應,他寫出的 regex 如下:

$pattern = '/^([a-z0-9])(([-a-z0-9._])*([a-z0-9]))*\@([a-z0-9])' .
'(([a-z0-9-])*([a-z0-9]))+' . '(\.([a-z0-9])([-a-z0-9_-])?([a-z0-9])+)+$/i';

echo preg_match ($pattern, "email-address-to-validate@host.tld");

延伸閱讀

正則表達式:Email名稱防止連續輸入點(.)及下底線(_)@精讚

參考資料

[1] RFC 2821 http://www.faqs.org/rfcs/rfc2821.html

[2] About.com Are Email Addresses Case Sensitive?

[3] https://en.wikipedia.org/wiki/Email_address


原文 2010-05-02 22:44:17

END

你可能感興趣的文章

FIREFOX設定自己的搜尋引擎 在火狐上設定自己的搜尋引擎

FIREFOX設定GOOGLE翻譯搜尋引擎 在火狐上設定google翻譯成為自己的搜尋引擎

[Centos7] 升級gcc/gcc-c++ 由5.8版升級到9.3版 Centos7 使用yum安裝的gcc只到4.8.5(2015年版本),想辦法網級到 9.3

FTP的主動模式及被動模式 FTP的服務常會被防火牆擋掉,所以對於主動和被動模式,需要很了解

[Analytics] Google analytics 如何刪除資源和應用程式 當不再需要統計的站台要刪除analytics的統計時,找不到在哪裡可以刪除,怎麼操作?

NMAP 掃描方式說明 Nmap 的幾種掃瞄方式

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

沒有非誰做不可的事,也沒有不可被取代的人 沒有非誰做不可的事,也沒有不可被取代的人

談借錢 人借錢時手心向上頭向下,人還錢時手心向下頭向上

精讚的版面變化 ▓此文僅作為舊文的記錄▓ 這篇文章為了紀念改版完成而撰寫。 原本的部落格是民國97年的作品,那時還是用舊有的技術來寫,很

外匯課程經驗 有天遇到某個朋友的正妹朋友,說她有個很棒的外匯投資課程,要我們去聽,只收場地費200大洋。她又說續效最差一個月也有1%,誰還在苦哈哈上班?