有效电子邮件地址正则表达 [英] Valid email address regular expression?

查看:188
本文介绍了有效电子邮件地址正则表达的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经做了一些测试,但是我想询问是否有人看到这个ruby正则表达式的电子邮件验证问题:

  / \A([^ @ \s] +)@((?:[ -  a-z0-9] + \。)+ [az] {2,})\Z / i 

看起来不错?

解决方案>

你很亲密,只能添加几个字符:

 (?:( ?: \r \\\
)?[\t])*(?:(?:(?:[^()<> @,;:\\.\ [\] \000- \\ 031] +(?:(?:( ?: \r\\\
)?[\t]
)+ | \Z |(?= [\ [() ; @;:\\ .\ [\]]))| (:[^ \ \r\\] | \\ |(:(??? :\r\\\
)?[\t]))*(?:( ?:
\r\\\
)?[\t])*)(?: \。 (?:(?:\r\\\
)?[\t])*(?:[^()@,;:\\.\ [\] \ 000-\031] +(?:(?:(
?:\r\\\
)?[\t])+ | \Z |(?= [\ [() <> @;:\\ .\ [\]]))| (:[^ \ \r\\\ ] | \\。|(?:( ?: \r\\\
)?[
\t]))*(?:( ?: \r\\\
)?[ \t])*))* @(?:( ?: \r\\\
)?[\t])*(?:[^()<> @,;:\\ .\ [\] \000-\0
31] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [ ()<> @;:\\ .\ [\]]))| \ [([^ \ [\] \r \\] | \\。)* \
](?:( ?: \r\\\
)?[\t])*)(?: \。 (?:\r\\\
)?[\t])*(?:[^()<> @,;:\\.\ [\] \000- \031] +
(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [() > @;:\\ .\ [\]]))| \ [([^ \ [\] \r\\] | \\)* \](?:
(?:\r\\\
)?[\t])*))* |(?:[^()<> @,;:\\\ \\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z
|(?= [\ [ ()<> @;:\\ .\ [\]]))| ?(:[^ \ \r\\\ \\] | \\ |(?:( ?: \r\\\
) ?[\t]))*(?:( ?: \r\\\

?[\t])*)* \<(?:( ?: \r \\\
)?[\t])*(?:@(?:[^()<> @,;:\\.\ [\] \000-\031 ] +(?:(?:(?:\
r \\\
)?[\t])+ | \Z |(?= [\ [() ;:\\ .\ [\]]))| \ [([^ \ [\] \r\\] | \\)* \( ?(?: \r\\\
)?[
\t])*)(?: \。(?:( ?: \r\\\
)?[\t] )*(?:[^()@,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r \\\

?[\t])+ | \Z |(?= [\ [()<> @,;:\\.\ [\ ]]))| \ [([^ \ \] \r\\] | \\)* \(:( ?: \r\\\
)。? [\t]
)*))*(?:,@(?:( ?: \r\\\
)?[\t])*(?:[^() ; @,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[
\吨])+ | \Z |(?= [\ [ ()<> @;:\\ .\ [\]]))| \ [([^ \\ \\ [\] \r\\] | \\ 。)* \](?:( ?: \r\\\
)?[\t])*
)(?: \。(?:( ?: \r\\\
)?[\t])*(?:[^()<> @,;:\\.\ [\] \000-\031] +(? (?:\r\\\
)?[\t]
)+ | \Z |(?= [\ [()<" @,;:\\ .\ [\]))| \ [([^ \ \] \r\\] |?\\)* \(:( ?: \\ \\\\
)?[\t])*))*)
* :(?:( ?: \r\\\
)?[\t])*)?(? [^()<> @,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)? [\t])+
| \Z |(?= [\ [()<> @,;:\\.\ [\]]) (?:[^ \\\\] | \\。|(?:( ?: \r\\\
)?[\t]))*(? (?:\r
\\\
)?[\t])*)(?: \。(?:( ?: \r\\\
)?[\t])* (?:[^()@,;:\\.\ [\] \000-\031] +(?:(?:( ?:
\\ \\\\
)?[\t])+ | \Z |(?= [\ [()& ))| (?:[^ \ \r\\] | \\ |(? (?:\r\\\
)?[\t
])*(?:( ?: \r\\\
)?[\t])*))* @ (?:(?:\r\\\
)?[\t])*(?:[^()@,;:\\.\ [\] \ 000-\031
] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [() <> @;:\\ .\ [\]]))| \ [([^ \ [\] \r\\] | \\。 )* \](
?:( ?: \r\\\
)?[\t])*)(?: \。(?:( ?: \r\\\
) ?[\t])*(?:[^()@,;:\\.\ [\] \000-\031] +(?
:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [()<" @, \\\ .\ [\]))| \ [([^ \ \] \r\\] |?\\)* \(:( ?
:\r\\\
)?[\t])*))* \>(?:( ?: \r\\\
)?[\t])*) |(?:[^()<> @,;:\\.\ [\] \000-\031] +(?:(?
:(? \r\\\
)?[\t])+ | \Z |(?= [\ [()<> @,;:\\.\ [\] ]))|(?:[^ \\\\\\] | \\。|(?:(?:\r\\\
)?
[\t ]))*(?:( ?: \r\\\
)?[\t])*)* :(?:( ?: \r\\\
)?[\t])* (?:(?:(?:[^()@,;:\\.\ [\]
\000-\031] +(? ?(?:\r\\\
)?[\t])+ | \Z |(?= [\ [()<> @,;:\\ \\ [\]]))|(?:[^ \\\\\\] |
\\。|(?:( ?: \r\\\
) ?[\t]))*(?:( ?: \r\\\
)?[\t])*)(?:\。(?:( ?: \r\\\
)?[\t])*(?:[^()<>
@,;:\\。 [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [ ()<> @,;:\\.\ [\]]))|
(?:[^ \\\\\\] \。|(?:( ?: \r\\\
)?[\t])*(?:( ?: \r\\\
)?[\t])*)) * @(?:( ?: \r\\\
)?[\t]
)*(?:[^()<> @,;:\\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [ ()@]]]]​​]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] | \\。)* \](?:( ?: \r\\\
)?[\t])*)(?: \。(?:( ?: \r\ n)?[\t])*(?
:[^()<> @,;:\\.\ [\] \000-\031] +(?:(?:(?:\r \\\
)?[\t])+ | \Z |(?= [\ [()<> @,;:\\.\ [
\ ]]))| \ [([^ \ \] \r\\] | \\)* \(:( ?: \r\\\
)。? [\t])*))* |(?:[^()<> @,;:\\.\ [\] \000-
\031] +(?:(?:(?:\\\
)?[\t])+ | \Z |(?= [\ [()@,;:\ \.\ [\]]))|(?:[^ \\\\\\] | \\。(
?:( ?: \ r \\\
)?[\t]))*(?:( ?: \r\\\
)?[\t])*)* \<(?:( ?: \ r\\\
)?[\t])*(?:@(?:[^()@ @ ;;
:\\.\ [\] \ 000-\031] +(?:(?:(?:\r\\\
)?[\t])+ | \Z |(?= [\ [() @,;:\\.\ [\]]))| \ [([
^ \ [\] \r\\] | \\。 )* \](?:( ?: \r\\\
)?[\t])*)(?: \。(?:( ?: \r\\\
)?[\吨])*(?:[^()<> @;:\\\
.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z | (?= [\ [()@,;:\\.\ [\]]))| \ [([^ \ [\
] \\\\] | \\。)* \](?:( ?: \r\\\
)?[\t])*))*(? (?:\r\\\
)?[\t])*(?:[^()<> @,;:\\.\
[\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\ [() > @,;:\\.\ [\]]))| \ [([^ \ [\] \
r \\] | \\ 。)* \](?:( ?: \r\\\
)?[\t])*)(?: \。(?:( ?: \r\\\
)?[ \\??????????????????????????????????????????????? (?:\r\\\
)?[\t])+ | \Z |(?= [\ [()<> @,;:\\ [\]]))| \ [([^ \ [\] \\\\\]
| \\。)* \](?:(? \\\\
)?[\t])*))*)* :(?:( ?: \r\\\
)?[\t])*)?(?:[^() <> @;:\\ .\ [ \\] \0
00-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(?= [\\ \\ [ ()<> @;:\\ .\ [\]]))| ?(:[^ \ \r\\] | \\\ \\
。|(?:( ?: \r\\\
)?[\t]))*(?:( ?: \r\\\
)?[\t]) *)(?:\。(?:( ?: \r\\\
)?[\t])*(?:[^()<> @,
;:\ \.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |(? = [\ [ ()<> @;:\\ .\ [\]]))|(?
:[^ \\\\] | \\。|(?:( ?: \r\\\
)?[\t]))*(? (?:\r\\\
)?[\t])*))* @(?:( ?: \r\\\
)?[\t])*
(? :[^()<> @,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
) ?[\t])+ | \Z |(?= [\ [()<> @,;:\\
\ [\]]) | \ [([^ \ [\] \\\] | \\。)* \](?:( ?: \r\\\
)?[\t ])*)(?:\。(?:( ?: \r\\\
)?[\t])*(?:[
^()<> @,;: \\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z | (?= [\ [()@,;; \\.\ [\]
]))| \ [([^ \ [\] \\\\] | \\。)* \](?:( ?: \r\\\
)?[\t])*))* \>(?: (?:\r\\\
)?[\t])*)(?:,\s *(
?:(?:[^() \\\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ | \Z |( ?= [\ [()<> @,;:\\
.\ [\]]))|(?:[^ \\\\] | \\。|(?:( ?: \r\\\
)?\(?:(? \\\\
)?[\t])*(?:[^()<> @,;:\\。 (?:(?:( ?: \\\
)?[\t])+ | \Z |(?= [
\ [() :\\ .\ [\]))| (?:?[^ \ \r\\] | \\ |(:( ?: \r \\\
)?[\t]))*(?:( ?: \r\\\
)?[\t
])*))* @(?:(? \\\\
)?[\t])*(?:[^()<> @,;:\\。 (?:(?:(?:\\\
)?[\t
])+ | \Z |(?= [\ [() :\\ .\ [\]))| \ [([^ \ \] \r\\] | \\)* \(? (?:\r\\\
)?[\t])*)(?
:\。(?:( ?: \r\\\
)?[\t])*(?:[^()<> @,;:\\。 \ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ |
\Z |(? = [\ [ ()<> @;:\\ .\ [\]]))| \ [([^ \ [\] \r\\\ \\] | \\。)* \](?:( ?: \r\\\
)?[\t])*))* |(?:
[^()< ;;]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] )+ | \Z |(?= [\ [()<> @,;:\\.\ [\
]]))|(? ^ \\\\] | \\。|(?:( ?: \r\\\
)?[\t]))*(?:( ?: \ r \\\
)?[\t])*)* \<(?:( ?: \r\\\

?[\t])*(? :[^()<> @,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
) ?[\t])+ | \Z |(?= [\ [
()<> @,;:\\.\ [\]]) | \ [([^ \ [\] \\\] | \\。)* \](?:( ?: \r\\\
)?[\t ])*)(?:\(?:( ?: \r\ n)
?[\t])*(?:[^()<> @,;:\\.\ [\] \000-\031] + (?:(?:(?:\\\
)?[\t])+ | \Z |(?= [\ [()<>
@ :\\ .\ [\]))| \ [([^ \ \] \r\\] | \\)* \(? (?:\r\\\
)?[\t])*))*(?:,@(?:( ?: \r\\\
)?[
\t] )*(?:[^()@,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r \\\
)?[\t])+ | \Z |(?= [\ [()<> @,
;:\\.\ [\ ]]))| \ [([^ \ \] \r\\] | \\)* \(:( ?: \r\\\
)。? [\t])*)(?: \。(?:( ?: \r\\\
)?[\t]
)*(?:[^() @,;:\\.\ [\] \000-\031] +(?:(?:( ?: \r\\\
)?[\t])+ \Z |(?= [\ [()@ @;;; \\
.\ [\]]))| \ [([^ \ [\] \\\\] | \\。)* \](?:( ?: \r\\\
)?[\t])*))*)*: (?:( ?: \r\\\
)?[\t])* )?
(?:[^()<> @,;:\\.\ [\] \000-\031] +(?:(? \\\\
)?[\t])+ | \Z |(?= [\ [()<> @,;:\\ \]]))|(?:[^ \\r\\] | \\。|(?:( ?: \r\\\
)?[\t] )*(?:( ?: \r\\\
)?[\t])*)(?:\。(?:(?:
\r\\\
)? [\t])*(?:[^()<> @,;:\\.\ [\] \000-\031] +(?:(?:( ?:\r\\\
)?[\t])+ | \Z |(?= [\ [
()<> @,;:\\。 \ [\]]))|(?:[^ \\\\] | \\。|(?:(?:\r\\\
)?[ \\)(*(?:(?:\r\\\
)?[\t])
*))* @(?:(?:\r\\\
)? [\t])*(?:[^()<> @,;:\\.\ [\] \000-\031] +(?:(?:( ?:\r\\\
)?[\t])
+ | \Z |(?= [\ [()<> @,;:\\。 \ \]))| \ [([^ \ \] \r\\] |?\\)* \(:( ?: \r \\\
)?[\t])*)(?: \
。(?:( ?: \\ \\\\
)?[\t])*(?:[^()<> @,;:\\。 (?:(?:(?:\\\
)?[\t])+ | \Z
|(?= [\ [() :\\ .\ [\]))| \ [([^ \ \] \r\\] | \\)* \(? (?:\r\\\
)?[\t])*))* \>(?:(
?:\r\\\
)?[\t]) *))*)?; \s *)

不,我不是在开玩笑: a href =http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html =noreferrer> http://www.ex-parrot.com/~pdw/Mail- RFC822-Address.html


I have done some testing but I wanted to ask if anyone sees a problem with this ruby regular expression for email validation:

/\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i

Look good?

解决方案

You were close, have to add just a few more characters:

(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
)+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:
\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(
?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ 
\t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\0
31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\
](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+
(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:
(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)
?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\
r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[
 \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)
?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t]
)*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[
 \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*
)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
)+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)
*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+
|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r
\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:
\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t
]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031
]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](
?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?
:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?
:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?
:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?
[ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] 
\000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|
\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>
@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"
(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t]
)*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?
:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[
\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-
\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(
?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;
:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([
^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\"
.\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\
]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\
[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\
r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] 
\000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]
|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \0
00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\
.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,
;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?
:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*
(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[
^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]
]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)(?:,\s*(
?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(
?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[
\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t
])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t
])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?
:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|
\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:
[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\
]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)
?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["
()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)
?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>
@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[
 \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,
;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t]
)*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?
(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:
\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[
"()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])
*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])
+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\
.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(
?:\r\n)?[ \t])*))*)?;\s*)

No, I'm not joking: http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html

这篇关于有效电子邮件地址正则表达的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆