JavaScript 正则表达式 /y 标志
示例
let text = "abc def ghi";
let pattern = /\w+/y;
// 从第 4 位开始对比
pattern.lastIndex = 4;
let result = text.match(pattern);亲自试一试 »
let text = "abc def ghi";
let pattern = /\w+/;
// 从第 4 位开始对比
pattern.lastIndex = 4;
let result = text.match(pattern);亲自试一试 »描述
/y(粘性)标志执行"粘性"搜索,仅匹配 RegExp 对象 lastIndex 属性指定的字符。
/y 标志确保后续匹配紧接前一个匹配项,不会跳过任何字符。
语法
new RegExp("regexp", "y")
或者:
/regexp/y
另请参阅:
The Corresponding Property: sticky
正则表达式方法
正则表达式的搜索和替换可以使用不同的方法。
以下是最常用的方法:
字符串方法
| 方法 | 描述 |
|---|---|
| match(regex) | 返回结果数组 |
| matchAll(regex) | 返回结果迭代器 |
| replace(regex) | 返回一个新的字符串 |
| replaceAll(regex) | 返回一个新的字符串 |
| search(regex) | 返回第一个匹配项的索引 |
| split(regex) | 返回一个结果数组 |
正则表达式方法
浏览器支持
/regexp/y 是 ECMAScript 6 (ES6 2015) 的一项特性。
JavaScript 2015 自 2017 年 6 月起,所有浏览器均已支持 JavaScript 2015。
| 方法 | 描述 |
|---|---|
| regex.exec() | 返回结果迭代器 |
| regex.test() | 返回 true 或 false |
| Chrome 51 |
Edge 15 |
Firefox 54 |
Safari 10 |
Opera 38 |
| 2016年5月 | 2017年4月 | 2017年6月 | 2016年9月 | 2016年6月 |
