微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ES6-正则新增复习+学习

ES6-正则

昨天,复习了正则的基本知识,今天学习ES6新增的正则的知识,做一个总结笔记,大家可以先看4,5对应的方法然后再从头看,话不多说直接上:

 

1.RegExp构造函数的区别

2.新增的修饰符

3.新增属性

4.字符串对应的正则方法api文档

5.RegExp对应的方法api文档

 

 

直接开始上手:

 

 

 

 

1.RegExp构造函数的区别

 1 //ES5中也有相应的正则构造函数,首先复习一下ES5的RegExp构造函数,创建方法
 2 var demo = /abc/g;   //字面量
 3 var demo = new RegExp('abc','i');   //构造函数创建,第一个为字符串,第二个参数为修饰符
 4 var demo = new RegExp(/abc/i);     //直接构造函数创建,参数为正则表达式,返回的也是一个正则表达式
 5 ​
 6 ​
 7 //ES6新增区别
 8 //我们知道,我们的正则表达式可能修饰符需要经常的更换,想通过一个构造函数,重新更换一个原来的正则表达式的修饰符,ES5不提供简便的操作,但是新增的ES6提供了一个新的方法,就是增多了一个RegExp构造函数的第二个参数(放置修饰字符),可以更改修饰符
 9 ​
10 var demo1 = new RegExp('abc', 'i');
11         console.log(demo1);       // /abc/i
12 var demo2 = new RegExp(demo1, 'ig');  
13         console.log(demo2);     // /abc/gi
14 ​

 


 

 

 

 

 

 

2.新增的修饰符

 

2.1 u修饰符

//u表示Unicode编码字符,大家知道,一般的字符基本都是UTF-8或者UTF-16编码的,基本都是2字节或者1个字节存储,我之前写的字符的表示就说明过这一点,那么超过Unicode编码\uFFFF的时候,那么就需要有两个字节表示,js不能更好的处理,因此,为了解决一个问题,ES6新增的u修饰符,可以正常处理4个字节的UTF-16编码,总之,处理Unicode编码字符加上u就行了。

 1 //(1) . 字符(除了换行外其他所有的单个字符,不包括编码大于\uFFFF)
 2 //加上u修饰符,就可以解决 . 字符无法识别编码大于\uFFFF的字符了
 3 var s = '
                
                                 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐