var re = /ad|adad|sdad/g;  这里的|表示'或'的意思

var str = '2013-6-7';var re = /(\d+)(-)/g;  这里的()是匹配子项的作用 : 小括号 ()  (还有另外一个意思,分组操作)

var re = /a[a-z0-9A-Z]c/;   字符类 : 一组相似的元素   [] 中括号的整体代表一个字符  注意:排除 : ^ 如果^写在[]里面的话,就代表排除的意思

\b : 独立的部分 ( 起始,结束,空格 )
\B : 非独立的部分  

作用可以看下面改进过后的getByClass方法

function getByClass(oParent,sClass){
var arr = [];
var aEle = oParent.getElementsByTagName('*');

//var re = /sClass/; //当正则需要传参的时候,一定要用全称的写法
var re = new RegExp('\\b'+sClass+'\\b');

for(var i=0;i<aEle.length;i++){
if( re.test(aEle[i].className) ){
arr.push( aEle[i] );
}
}

return arr;

}

 

重复子项:

var re = /\w\w/; c9
var re = /(\w)\1/; cc 99

\1 : 重复的第一个子项
\2 : 重复的第二个子项

 

量词:

{4,7} : 最少出现4次,最多出现7次
{4,} : 最少出现4次
{4} : 正好出现4次

+ : {1,} //\d{1,}
? : {0,1} : 出现0次或者1次

 

开始和结尾:

^ 开始 $ 结束


* : {0,} : 至少出现0次*

 

高级表单校验:

匹配中文:[\u4e00-\u9fa5]

行首行尾空格:^\s*|\s*$

Email:^\w+@[a-z0-9]+(\.[a-z]+){1,3}$

网址:[a-zA-z]+://[^\s]*

QQ号:[1-9][0-9]{4,9}

邮政编码:[1-9]\d{5}

身份证:[1-9]\d{14}|[1-9]\d{17}|[1-9]\d{16}x

posted on 2015-05-05 23:32  toodeep  阅读(562)  评论(0编辑  收藏  举报