接着上一篇js之正则表达式学习1,我们继续看下面的例子 [abc]用法:表示匹配方括号中的任意字符
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /^[abc]/; |
6 | str=´bbs.blueidea.com´; |
7 | execreg(reg,str); |
输出的结果是b
再看下面的例子
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /^[a-zA-Z][a-zA-Z0-9_]+/; |
6 | str=´bbs_´; |
7 | execreg(reg,str); |
表示开头必须是字母,但结尾可以是字母,数字或下划线
[^abc]:表示匹配非abc字符
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /[^abc]/; |
6 | str=´backdder´; |
7 | execreg(reg,str); |
输出为k因为back都属于abc集合中
从上述例子,可以知道[^0-9]表示非数字,[^a-z]表示非小写字母
边界
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\bc/; |
6 | str=´call´; |
7 | execreg(reg,str); |
匹配了左边的c
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\Bc/; |
6 | str=´12c2´; |
7 | execreg(reg,str); |
\B表示非边界,所以成功匹配到了c
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\d/; |
6 | str=´ec2e´; |
7 | execreg(reg,str); |
\d表示只匹配数字,输出为2.同理\D表示非数字
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\D/; |
6 | str=´2c2e´; |
7 | execreg(reg,str); |
输出为c
\s匹配单个空格,常用的是\s.+匹配空格后所有不换行的字符
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\s.+/; |
6 | str=´2 c2e´; |
7 | execreg(reg,str); |
本例输出c2e
\S 遇到空格正则匹配就停止
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\S/; |
6 | str=´2 c2e´; |
7 | execreg(reg,str); |
本例输出2
/\w/=/[a-zA-Z0-9_]/
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\w+/; |
6 | str=´2c2e´; |
7 | execreg(reg,str); |
如果想返回中文
1 | function execreg(reg,str){ |
2 | var result =reg.exec(str); |
3 | alert(result); |
4 | } |
5 | reg = /\W+/; |
6 | str=´中文´; |
7 | execreg(reg,str); |
本文为multifeeling原创,转载请注明来自multifeeling