# 课程 6:匹配重复字符

注意:有的正则表达式实现不支持下文重复语法的某些部分。

到目前为止,我们已经学习了如何指定要匹配的字符的范围,但是如何指定要匹配的字符的重复次数呢?一种方法是明确写出我们想要匹配多少个字符,例如 \d\d\d,它正好匹配三个数字。

更方便的方法是使用花括号表示法指定每个字符的重复次数。例如,a{3} 将匹配字符 a 正好三次。某些正则表达式引擎甚至允许您指定重复次数的范围,例如,a{1,3} 将匹配字符 a 至多 3 次,至少 1 次。

这个量词 (quantifier) 可以与任意字符或特殊的元字符一起使用,例如 w{3} (三个 w)、[wxy]{5} (五个字符,每个字符可以是 w、x 或 y) 和 .{2,6} (两到六个任意字符)。

译者注

花括号中的最大重复次数也可以省略:{n,} 表示重复至少 n 次,至多无限制。

在下面的几行中,最后一个只有一个 z 的字符串并不是俚语 "wazzup" 的正确拼写。尝试使用上面的花括号符号来编写一个只匹配前两个拼写的模式。

练习 6:匹配重复字符
Task Text Result
match wazzzzzup
match wazzzup
skip wazup
解决上述任务以继续下一个问题,或者查看答案

进阶课程:A4:贪婪 vs 懒惰