http://www.debuggex.com/ 这个很好用20120912
//十六进制颜色值的正则表达式
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
以#开头的三位或者6位
补充:《js语言精粹》中看到
reg = /^#([0-9a-f]{3}|[0-9a-f]{6})$/i;
i可忽略大小写
//去掉(rgb)这些,我觉得最后这个g可有可无啊
/(?:(|)|rgb|RGB)*/g
(?:pattern) 匹配pattern但不获取匹配结果
*
匹配前面的子表达式零次或多次。例如,zo*能匹配“z”以及“zoo”。*等价于{0,}。
/g 表示该表达式将用来在输入字符串中查找所有可能的匹配,返回的结果可以是多个。如果不加/g最多只会匹配一个
//20130809群里讨论
[]是集合 ()是分组
[]是字符组,匹配且必须匹配一个字符,
“不能单独使用数字、字母或_”
甲人 :var a='[a-z]+';
var b='[0-9]+';
var c='[-+_!@#$%^&*()]+';
/a+b+c|a+c+b|b+a+c|b+c+a|c+a+b|c+b+a/
乙人:数字,字母,_只要出现2个就够了
/ab|ac|bc|ba|cb|ca/
丙 :/^(?:d+|[a-zA-Z]+|[~!@#$%^&]+)$/
20130821看到雅诗兰黛的正则
var testMail = function(str){ var myReg = /^[.-_A-Za-z0-9]+@([_A-Za-z0-9]+.)+[A-Za-z0-9]{2,3}$/; return(testAct(str,myReg)); } var testMobile = function(str){ var myReg = /^0?(13[0-9]|15[012356789]|18[0236789]|14[57])[0-9]{8}$/; return(testAct(str,myReg)); }
if(!testMail(mail))