🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### RegExp特殊字符中的需要转义字符 * * * * * 需要转义的特殊字符前面加 `\` 匹配输入字符串的结尾位置,如果需要匹配匹配输入字符串的结尾位置,如果需要匹配本身的话,使用`\$` `^` 匹配输入字符串的开始位置,匹配^本身的话,使用\^ `*` 匹配前面的子表达式的零次或者多次,匹配*本身的话,使用\* `+` 匹配子表达式的1次或者多次,匹配+本身的话,使用\+ `. `匹配除换行符之外的任何一个字符,匹配.本身的话,使用\. ` [ `匹配一个中括号开始,匹配本身的,使用\[ `?` 匹配前面的子表达式的零次或者1次,或指明一个非贪婪限定符,要匹配本身的话,使用\? `\ `匹配本身的话,请使用`\\` ` { `标记限定符开始的地方,要匹配{ ,请使用`\{` ` |` 指明多项中的一个选择,可以理解含义为或的意思,匹配本身的话,使用`\|` 我们都知道在js中遇到特殊字符要使用转义字符,但是如果多个转义字符同时出现的话,那又是怎么用的呢?js中定义正则表达式有两种方法,这两种方法同样的正则表达式但是运行的结果可能是不相同的。 //第一种,直接定义法: ~~~ var reg1 = /\d/g; var str = '1'; console.log(reg1.test(str)); //返回true,说明此时reg1匹配的是\d,也就是数字 var reg1 = /\\d/g; var str = '\\d'; console.log(reg1.test(str)); //返回true,说明此时reg1匹配的是字符串"\\d" var reg1 = /\\\d/g; var str = '\\1'; console.log(reg1.test(str)); //返回true,说明此时reg1匹配的是字符串"\\数字" var reg1 = /\\\\d/g; var str = '\\\\d'; console.log(reg1.test(str)); //返回true,说明此时reg1匹配的是字符串"\\d" ~~~ //第二种:构造函数方式: ~~~ var reg2 = new RegExp('\d','g'); var str = 'd'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符"d" var reg2 = new RegExp('\\d','g'); var str = '1'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符"\d",即数字 var reg2 = new RegExp('\\\d','g'); var str = '1'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符"\d",即数字 var reg2 = new RegExp('\\\\d','g'); var str = '\\d'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符串"\\d" var reg2 = new RegExp('\\\\\d','g'); var str = '\\d'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符串"\\d" var reg2 = new RegExp('\\\\\\d','g'); var str = '\\1'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符串"\\数字" var reg2 = new RegExp('\\\\\\\d','g'); var str = '\\1'; console.log(reg2.test(str)); //返回true,说明此时reg2匹配的是字符串"\\数字" ~~~