RegExp \R Escape S1
中文标题:正则表达式 \R 转义
提案概览
- 阶段: Stage 1
- 状态: 进行中
- ECMAScript 版本: —
- 同步时间: 2026年8月26日
- English original · 官方仓库
提案速览
本提案在正则表达式中引入 \R 转义,以匹配任何 Unicode 行终止符序列,目前难以正确编写。它需要 u 或 v 标志,且不支持在字符类内部使用。
Note
以下 README 来自上游仓库,其中的阶段或状态标注可能滞后;当前信息以提案概览为准。
ECMAScript 正则表达式 \R 转义
状态
阶段: 1
提案负责人: Ron Buckton (@rbuckton)
有关本提案的详细状态,请参见下面的 TODO。
作者
- Ron Buckton (@rbuckton)
动机
注意:有关本提案如何与其他可能的正则表达式未来特性相匹配的概述,请参见 https://github.com/rbuckton/proposal-regexp-features 。
\R 转义序列匹配匹配 Unicode 行终止符的各种码点集合,这些码点集合通常难以正确编写。
现有实现
更多信息请参见 https://rbuckton.github.io/regexp-features/features/line-endings-escape.html 。
语法
\R— 匹配任何行结束字符序列。
注意:需要
u或v标志,因为\R目前在没有u标志的情况下只是对R的转义。
注意:不支持在字符类内部使用。
语义
- 在
u或v模式下,\R大致等价于以下模式:- 与
mu模式下的^和$对齐
- 与
- 当不在
u或v模式下时,\R将继续匹配字面字符R。
注意:上面的示例使用了原子组
(?>)来防止在匹配\r\n?时进行回溯。原子组在 此处 提出。
示例
历史
- 2021年10月28日 — 提出进入 Stage 1(幻灯片)
- 结果:推进至 Stage 1
TODO
以下是推进 TC39 提案流程 各阶段所需完成的高级任务列表: