js正则表达式有两种定义方法
第一种,类似PHP等语言,直接使用两个斜线,不需要加引号,如:var exp=/\d/i;
第二种,使用js的RegExp对象定义,其不需要加反斜线,第一组引号的参数表示正则内容,第二组引号表示修饰符,如:var exp=new RegExp("\d","i");
这里我主要想表达的是,第二种写法会遇到的情况
在正则表达式中,如果遇到特殊字符串,我们需要用反斜线进行转义
如问号“?”,在双斜线定义的正则中,/\?\d/即可表示问号加数字
上面的写法在RegExp对象中匹配不到信息,转义的位置需要双反斜线:new RegExp("\\?\d","i")
啰嗦一堆,重点既是:在js的RegExp对象中写正则,转义使用双反斜线!完。