语法错误:正则表达式中的不完整量词

JavaScript 异常 "正则表达式中的不完整量词" 发生在正则表达式模式包含 { 但不以有效 量词 开头时。

消息

SyntaxError: Invalid regular expression: /1{/u: Incomplete quantifier (V8-based)
SyntaxError: incomplete quantifier in regular expression (Firefox)
SyntaxError: Invalid regular expression: incomplete {} quantifier for Unicode pattern (Safari)

错误类型

出了什么问题?

正则表达式模式中的 { 字符以 量词 开头。有效量词的格式为 {n}{n,}{n,m},其中 nm 是非负整数,m 不小于 n。如果 { 字符没有以有效量词开头,则会发生 SyntaxError

在不识别 Unicode 的模式下,此语法会导致 { 成为文字字符,而不是生成错误,但这是一种 已弃用的语法,你不应该依赖它。

示例

无效情况

js
/1{/u;
/1{a}/u;
/1{}/u;
/1{1,2,3}/u;
/1{1, 2}/u;

有效情况

js
/1{1}/u;
/1{1,}/u;
/1{1,2}/u;

另请参阅