正则中的编码
在正则表达式中可以使用字符串本身,也可以使用它的ASCII码或Unicode码。
要用ASCII码来表示一个字符,则必须制定一个两位的十六进制代码,并在前面加上\x
。如:字符b
的ASCII码为98, 转成十六进制就是62,即\x62
。 /\x62/.test("blue"); // true
也可以使用八进制代替16进制
/\142/.test("blue"); // true
也可以用Unicode来表示字符,必须制定字符串的四位十六进制的表示形式,比如b
的表示方式为\u0062
/\u0062/.test("blue"); // true
同样可以指定范围,比如ASCII码中小写的a-z的范围十进制是97~122,十六进制为61~7A。
var reg = /[\x61-\x7a]/; reg.test("abc"); // true reg.test("ABC"); // false
- 参考资料