JavaPro

          On the Java Road
          隨筆 - 26, 文章 - 0, 評論 - 63, 引用 - 0
          數據加載中……

          Email驗證的正則表達式

                這個Email驗證的正則表達式基本符合RFC3521規(guī)范,缺少ipv6部分的驗證。

                  Mail=("[\\x20-\\x21\\x23-\\x5B\\x5D-\\x7E]*"|"(\\\\[\\x20-\\x7E])*"|^[-!#$%&\'*+/0-9=?A-Z\\^_`a-z{|}~]+(.[-!#$%&\'*+/0-9=?A-Z\\^_`a-z{|}~]+)*)@([a-zA-Z0-9]+([\\-\\da-zA-Z]*[a-zA-Z0-9]+)*(\\.[a-zA-Z\\d]+([\\-\\da-zA-Z]*[a-zA-Z0-9]+)*)*|[\\[]((1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])\\.(1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])\\.(1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])\\.(1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9]))[\\]]|((1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])\\.(1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])\\.(1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])\\.(1[0-9][0-9]|25[0-5]|2[0-4][0-9]|0[0-9][0-9]|00[0-9]|[0-9][0-9]|[0-9])))

                RFC3521中的相關定義:
                        Domain         = sub-domain *("." sub-domain)
                        sub-domain     = Let-dig [Ldh-str]

             Let-dig        = ALPHA / DIGIT

             Ldh-str        = *( ALPHA / DIGIT / "-" ) Let-dig

             address-literal  = "[" ( IPv4-address-literal /
                              IPv6-address-literal /
                              General-address-literal ) "]"
                              ; See Section 4.1.3

             Mailbox        = Local-part "@" ( Domain / address-literal )

             Local-part     = Dot-string / Quoted-string
                            ; MAY be case-sensitive


             Dot-string     = Atom *("."  Atom)

             Atom           = 1*atext

             Quoted-string  = DQUOTE *QcontentSMTP DQUOTE

             QcontentSMTP   = qtextSMTP / quoted-pairSMTP

             quoted-pairSMTP  = %d92 %d32-126
                              ; i.e., backslash followed by any ASCII
                              ; graphic (including itself) or SPace

             qtextSMTP      = %d32-33 / %d35-91 / %d93-126
                            ; i.e., within a quoted string, any
                            ; ASCII graphic or space is permitted
                            ; without blackslash-quoting except
                            ; double-quote and the backslash itself.

          posted on 2008-12-19 15:43 Jason Du 閱讀(594) 評論(0)  編輯  收藏 所屬分類: 程序人生

          主站蜘蛛池模板: 揭东县| 崇阳县| 高邮市| 云浮市| 南江县| 北京市| 湾仔区| 休宁县| 桂林市| 三河市| 德阳市| 肇源县| 宣恩县| 富平县| 比如县| 河津市| 灵寿县| 扶风县| 娱乐| 普格县| 芦山县| 无为县| 乡宁县| 普兰县| 日喀则市| 崇阳县| 涿鹿县| 泸西县| 石楼县| 渝北区| 泗洪县| 桐柏县| 丰台区| 诏安县| 惠来县| 和平县| 那曲县| 广河县| 紫阳县| 苗栗市| 镇宁|