\d : 数字
\w : 字母数字下划线
. : 任意字符
* : 任意个字符(包括0)
+ : 至少一个字符
? : 0个或1个字符
{n} : n个字符
{n,m} :n-m个字符
\s :表示至少有一个空格也可以是tab键空格
A|B
可以匹配A或B,所以[J|j]ava[S|s]cript
可以匹配‘JavaScript‘
、‘Javascript‘
、‘javaScript‘
或者‘javascript‘
。
^
表示行的开头,^\d
表示必须以数字开头。
$
表示行的结束,\d$
表示必须以数字结束。
要做更精确地匹配,可以用[]
表示范围
[0-9a-zA-Z\_]
可以匹配一个数字、字母或者下划线;
[0-9a-zA-Z\_]+
可以匹配至少由一个数字、字母或者下划线组成的字符串,比如‘a100‘
,‘0_Z‘
,‘js2015‘
等等;
[a-zA-Z\_\$][0-9a-zA-Z\_\$]*
可以匹配由字母或下划线、$开头,后接任意个由一个数字、字母或者下划线、$组成的字符串,也就是JavaScript允许的变量名;
[a-zA-Z\_\$][0-9a-zA-Z\_\$]{0, 19}
更精确地限制了变量的长度是1-20个字符(前面1个字符+后面最多19个字符)。
JavaScript有两种方式创建一个正则表达式:
第一种方式是直接通过/正则表达式/
写出来,第二种方式是通过new RegExp(‘正则表达式‘)
创建一个RegExp对象。
两种写法是一样的:
var re1 = /ABC\-001/; var re2 = new RegExp(‘ABC\\-001‘); re1; // /ABC\-001/ re2; // /ABC\-001/
最后可用test()测试正则是否匹配相应字符
注:遇到特殊字符需要转义符"\";
原文地址:http://ansue.blog.51cto.com/9481468/1727650