iT邦幫忙

4

第四章,合法 E-mail address 的正規化標示法。

了解了正規化表示法的規則之後,就讓我們來牛刀小試一下。之前大概介紹了 E-mail 的規則,這次就來看看如何用正規化表示法來表示 E-mail 位址的樣式。
再來複習一下合法 E-mail address 有哪些條件:
一、必要且唯一的 @ 符號左邊是收件人名稱;右邊是收件位址。
二、收件人名稱與收件位址可以是英文、數字、特定符號( . - _ ),長度不限制。
三、收件位址以 . 符號分欄位,最靠近 @ 符號的第一欄(主機名稱)可以是英文、數字、特定符號( . - );其餘欄位(主機位址)則限定只能是英文,合法欄位為 2 到 4 欄

OK, 結合以上樣是規定,合法 E-mail address 的正規化表示法為:
[A-Z0-9._-]+@[A-Z0-9.-]+\.[A-Z]{2,4}

以下針對這個正規化表示由左至右再進一步解說:

  1. [A-Z0-9._-]+ 為收件者名稱。其中的 + 符號代表 [A-Z0-9._-] 必須出現至少一次,但長度不限,而內容為英文、數字、特定符號( . - _ )
  2. 一個 @ 符號。
  3. [A-Z0-9.-]+ ,同裡,主機名稱的規則跟收件者名稱相同。
  4. \.[A-Z]{2,4} 代表主機位址只接受英文字母,可以有2到4欄,以 . 符號做分界。

1 則留言

0
player
iT邦大師 1 級 ‧ 2010-09-07 17:34:41

怪了? 以前不知從哪邊抄來下面這種的, 你有驗證過你的是否OK嗎?

([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})

fillano iT邦超人 1 級 ‧ 2010-09-07 18:06:30 檢舉

這是要ip/domain name通用?不過email用ip的應該不多吧...

我要留言

立即登入留言