日期:2014-05-20  浏览次数:20621 次

帮我分析一下这个正则表达式
这个匹配提Email的正则表达式:/^\w+(\.\w+)*@\w+(\.\w+)+$/
里面的加号是什么意思?小括号又是什么意思?
下面的两个正则表达式和下面这个有啥区别,
一 ^\w+(\.\w+)*@$
二 ^[a-zA-Z0-9].*\.[a-zA-Z0-9]*@$

\w里包含 字符‘-'吗?

------解决方案--------------------
\w 单词字符:[a-zA-Z_0-9]
------解决方案--------------------
\w包括下划线,不包括-。
下面的两个表达的意思一样吧!
跟上面的区别是下面的没有匹配@后面的内容。。。。

------解决方案--------------------
upupupupupup
------解决方案--------------------
+ 指前面的字符重复一次或多次,* 是重复任意次 ?是零或一次

小括号是分组用, 有时候用来匹配位置 比如(?!-) 用来匹配位置表示这个地方不能是 - 

\w包含下划线、、、

再看这几个式子:

1. /^\w+(\.\w+)*@\w+(\.\w+)+$/
2. /^\w+(\.\w+)*@$/
3. /^[a-zA-Z0-9].*\.[a-zA-Z0-9]*@$/

区别下边的人说吧... 说实话正则我研究得不深
------解决方案--------------------
我的资源里有正则表达式的验证工具,你可以下载下来。以后写代码就可以自己去验证自己写得是不是正确; 

------解决方案--------------------
我可以很明确地告诉你,你这个 Email 的正则表达式是错误的!

Email 很难使用正则表达式来表述,下面这个才稍微精确一些:

((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?