let exp = new RegExp();
console.log(exp);//默认/(?:)/
三、U修饰符
let s = '你好';
//下面\需要转义
let s1 = `\\u${s.charCodeAt(0).toString(16)}`;
let s2 = `\\u${s.charCodeAt(1).toString(16)}`;
console.log(s2);//\u597d
console.log(s1+s2);//\u4f60\u597d
console.log(/^\u4f60/.test('\u0006/\u0061'));//false
添加U修饰符,会把整体看成1个字符。
console.log(/^.$/.test('我'));//true
console.log(/^.$/u.test('我'));//true
var s3 = '𠮷';
//unicode编码值大于FFFF
console.log(/^.$/.test(s3));//fasle
console.log(/^.$/u.test(s3));//true
i不区分大小写。
正则里面需要转义。
g全局匹配,无位置要求。
y粘连匹配,需要从头开始。
let t = 'aaa-aa-a';
let r1 = /a+/g;
//相当于let r1 = new RegExp(/a+/g);
let r2 = /a+/y;
相当于let r1 = new RegExp(/a+/y);
console.log(r1.exec(t));
console.log(r2.exec(t));
ES6--正则的扩展一、RegExp 构造函数二、字符串方法中的正则使用1.replace()2.search()3.split()4.match()三、U修饰符四、s修饰符一、RegExp 构造函数 let reg = new RegExp('/\d+/','g'); //等价于 let regd = /\d+/g; //获取当前正则对象的修饰符 console.log(reg.fla.