《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>复用前面写好的捕获组。
《ES6标准入门》读书笔记 第5章 - 正则增强的更多相关文章
- ES6标准入门读书笔记
第一章 基础 1.let和const命令 (1).let用于声明变量,所声明的变量只在当前代码块有效 特点:不存在变量提升 所以在变量声明之前就使用会报错 暂时性死区 只 ...
- 《ES6标准入门》(阮一峰)--6.正则的扩展
1.RegExp 构造函数 在 ES5 中,RegExp构造函数的参数有两种情况. 第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag). var regex = new Re ...
- 第三章 Git的入门 - 读书笔记
Android驱动月考3 第三章 Git的入门 - 读书笔记 对于Github,这是全世界最大的开源平台,你可以把你做的项目在这里开源,把你发现的一些新技术在这里开源,向全世界的开发者们分享,大家都彼 ...
- 《Linux内核设计与实现》第八周读书笔记——第四章 进程调度
<Linux内核设计与实现>第八周读书笔记——第四章 进程调度 第4章 进程调度35 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配 ...
- 《Linux内核设计与分析》第六周读书笔记——第三章
<Linux内核设计与实现>第六周读书笔记——第三章 20135301张忻估算学习时间:共2.5小时读书:2.0代码:0作业:0博客:0.5实际学习时间:共3.0小时读书:2.0代码:0作 ...
- 《Linux内核设计与实现》 第八周读书笔记 第四章 进程调度
20135307 张嘉琪 第八周读书笔记 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统.只有 ...
- 《Linux内核分析》读书笔记(四章)
<Linux内核分析>读书笔记(四章) 标签(空格分隔): 20135328陈都 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行 ...
- 《LINUX内核设计与实现》第三周读书笔记——第一二章
<Linux内核设计与实现>读书笔记--第一二章 20135301张忻 估算学习时间:共2小时 读书:1.5 代码:0 作业:0 博客:0.5 实际学习时间:共2.5小时 读书:2.0 代 ...
- 《Linux内核设计与实现》第四周读书笔记——第五章
<Linux内核设计与实现>第四周读书笔记--第五章 20135301张忻 估算学习时间:共1.5小时 读书:1.0 代码:0 作业:0 博客:0.5 实际学习时间:共2.0小时 读书:1 ...
随机推荐
- The equation SGU - 106
题目链接:https://codeforces.com/problemsets/acmsguru/problem/99999/106 这个题是关于EXGCD特别好的一个题目.题目大意:有一个等式ax+ ...
- 在数组添加元素时报错:IndexError: list index out of range
今天第一次发随笔还有许多不足之处,欢迎评论!!! 最近在写一个成语接龙的小游戏,结果在数组添加元素时报错:IndexError: list index out of range 源码: import ...
- mybatis 批量删除
mapper.xml: <update id="delete" parameterType="int"> delete from user_logi ...
- linux 文件的查找和压缩
1.使用 locate 命令 需要安装:yum install mlocate -y 创建或更新 slocate/locate 命令所必需的数据库文件:updatedb 作用:搜索不经常改变的文件如配 ...
- /proc/[pid]/status
http://man7.org/linux/man-pages/man5/proc.5.html /proc/[pid]/status Provides much of the information ...
- CF1324 --- Maximum White Subtree
CF1324 --- Maximum White Subtree 题干 You are given a tree consisting of \(n\) vertices. A tree is a c ...
- js的call方法
obj1.method.call(obj2,arg1,arg2,arg3...) call方法的作用就是 把obj1的方法放到obj2对象上使用 arg1,arg2....是参数,传给mehtod的哟 ...
- embed git commit hash to assembly
https://stackoverflow.com/a/41200059/3782855 https://github.com/304NotModified/Fody.Stamp
- windows右键没有新建选项的解决办法
1 以管理员身份运行cmd 2 cmd /k reg add "HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandl ...
- C++类的开发实战--班级成绩管理系统
#include<bits/stdc++.h> using namespace std; struct birth { int year,month,day; }; struct grad ...