1. RegExp构造函数

ES5中,RegExp构造函数的参数:

  1. 参数是字符串,这时第二个参数表示正则表达式的修饰符(flag)
  2. 参数是一个正则表示式,这时会返回一个原有正则表达式的拷贝。但是,ES5不允许此时使用第二个参数,添加修饰符,否则会报错。

ES6改变了这种行为。如果RegExp构造函数第一个参数是一个正则对象,那么可以使用第二个参数指定修饰符。而且,返回的正则表达式会忽略原有的正则表达式的修饰符,只使用新指定的修饰符。

2. 字符串的正则表达式

字符串对象共有4个方法,可以使用正则表达式:match()、replace()、search()和split()。

ES6将这4个方法,在语言内部全部调用RegExp的实例方法,从而做到所有与正则相关的方法,全都定义在RegExp对象上。

String.prototype.match 调用 RegExp.prototype[Symbol.match]
String.prototype.replace 调用 RegExp.prototype[Symbol.replace]
String.prototype.search 调用 RegExp.prototype[Symbol.search]
String.prototype.split 调用 RegExp.prototype[Symbol.split]

3. u修饰符

ES6对正则表达式添加了u修饰符,含义为“Unicode模式”,用来正确处理大于\uFFFF的Unicode字符。

也就是说,会正确处理四个字节的UTF-16编码。对于码点大于0xFFFF的Unicode字符,点字符不能识别,必须加上u修饰符。

ES6新增了使用大括号表示Unicode字符,这种表示法在正则表达式中必须加上u修饰符,才能识别。

/\u{61}/.test('a') // false
/\u{61}/u.test('a') // true
/\u{20BB7}/u.test('

最新文章

  1. Android 二维码 生成和识别(附Demo源码)
  2. 阿里云的RDS 查看binlog日志的方法
  3. CSS行内元素和块级元素的居中
  4. Ansible安装配置Nginx
  5. 【OpenCV】基于kmeans的细胞检测方法
  6. TOMCAT 优化设置
  7. tornado之文件上传的几种形式form,伪ajax(iframe)
  8. BZOJ5316 : [Jsoi2018]绝地反击
  9. php-beast 代码加密
  10. Debian 8 安装Nginx最新版本
  11. 一次enq: TX - index contention等待事件处理
  12. 写在开始前---ajax中的会话过期与重新登录
  13. oracle 11g安装过程
  14. Qt信号之自定义数据类型
  15. 【DS】排序算法之冒泡排序(Bubble Sort)
  16. mysql多表查询,group by并将结果导出来csv文件
  17. [Android Pro] 终极组件化框架项目方案详解
  18. 原创工具binlog2sql:从MySQL binlog得到你要的SQL
  19. WinRT 中后台任务类的声明
  20. 高级Bash脚本编程(二)

热门文章

  1. Linux下mysql新建账号及权限设置
  2. 使用 Python 创建你自己的 Shell(下)
  3. ef 5 在 DropCreateDatabaseAlways 报错,the connection is currently used
  4. 采用p6spy完整显示hibernate的SQL语句
  5. IIS 10.0 无法安装 URL rewrite重写模块 2.0解决办法
  6. OpenCV中的常用函数
  7. php Excel文件导入 Spreadsheet_Excel_Reader
  8. js版贪吃蛇
  9. EGit使用教程:第一篇 添加工程到版本控制
  10. Dockerfile 中的 multi-stage
  11. Django之admin的使用和源码剖析
  12. 课后作业机票,赌骰子游戏,switch的使用实例
  13. VirtualBox中安装CentOS 7_Linux
  14. MySQL数据库再回首
  15. 使用spark集成kudu做DDL
  16. 异步 Apex 类
  17. 传输层——TCP报文头介绍
  18. 在windows上通过ssh远程链接linux服务器[转]
  19. Linux添加防火墙、iptables的安装和配置(亲测)
  20. Jquery 让contains不区分大小写