《ES6标准入门》读书笔记 第5章 - 正则增强

第五章 - 正则增强 构造函数增强

允许覆写修饰符,如new RegExp(someRegex, 'ig')

字符串上的正则方法

原先match、replace等可以调用正则的方法在String的原型上,现在都重定向到RegExp原型上的对应方法了。

修饰符相关

u修饰符表示Unicode模式,可以正确处理大于\uFFFF的Unicode字符。

y修饰符表示粘连,与g类似,但是要求匹配必须从剩余的第一个位置开始,而不是后面的任意位置。可以通过RegExp对象上的sticky属性来了解是否使用了y修饰符。

RegExp对象上的source属性是正则表达式正文,flags属性的修饰符

s修饰符使得正则中的点号(任意字符点)可以表示\n、\r等行终止符

向后看零宽断言

众所周知,JS正则的零宽断言只支持向前看。现在有提案讨论准备支持向后看的零宽断言了。

捕获组相关

具名捕获组

之前括号捕获组只能根据$i按出现顺序指代,现在可以给捕获组命名了,写作:(?<name>xxx)

命名后使用matchObj.groups[name]访问,使用$<name>指代。

具名捕获+解构赋值

let { groups: {one, two} } = /(?<one>xxx)(?<two>yyy)/

复用具名捕获组

正则可以写成(?<name>xxx)\k<name>,即用\k<name>复用前面写好的捕获组。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyjfzx.html