【发布时间】:2013-04-27 00:45:20
【问题描述】:
^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))
@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)
+[a-zA-Z]{2,}))$
我只能理解正则表达式的一部分,而不是整个表达式,比如
([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)
匹配一个或多个不是字符的字符
<>()[\]\\.,;:\s@\" \\ Not sure what this [\]\\ and \s@\ means
我也可以理解其他一些部分,但不能作为一个整体来理解。
【问题讨论】:
-
你从哪里得到的?是传递给
new RegExp的字符串,还是省略了文字分隔符? -
我正在使用 javascript 验证,并在它用于测试的地方遇到了它
email Address我试图理解它但徒劳无功 -
myezapp.com/apps/dev/regexp/show.ws 将其插入此处以直观地解释捕获组等。这是你的:tinyurl.com/ccuqrwk
-
前面有反斜杠的条目是转义字符,会有其他含义。
\]只是]字符,因为这通常会结束课程,而\\是转义的反斜杠,因此仅表示反斜杠本身。\s是空格的特殊字符类。 -
如果你在你的代码中使用这样的正则表达式,我必须跟着你去弄清楚,我会弄清楚你住在哪里! “始终编写代码,就好像最终维护你的代码的人是一个知道你住在哪里的暴力精神病患者一样。”
标签: javascript regex validation