正则的扩展
基本用法
1 | var regex = new RegExp("xyz", "i") |
match()、replace()、search()、split()
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]
u 修饰符、i 修饰符、y 修饰符
ES6 对正则表达式添加了 u 修饰符,用来处理大于\uFFFF 的 Unicod 字符。
\u004B 与\u212A 都是 K,不加修饰就无法识别非规范的 K 字符。
y 修饰符与 g 修饰符类似,也是全局匹配,不同之处在于 g 修饰符只要剩余位置中存在匹配就行,而 y 修饰符会确保匹配必须从剩余的第一个位置开始。
1 | var s = "aaa-aa-a" |
sticky 属性
与 y 修饰符匹配,表示是否设置了 y 修饰符。
flags 属性
返回正则表达式的修饰符。
组匹配
1 | const RE_DATE = /(\d{4})-(\d{2})-(\d{2})/ |