正则表达式量词

*、+、?、{n,m} 等指定重复次数的元字符,控制前一个元素的出现次数。

正则表达式量词 (Quantifier) 是指定前一个模式元素重复次数的元字符。包括 * (0 次或多次)、+ (1 次或多次)、? (0 次或 1 次) 和 {n,m} (n 到 m 次)。

默认情况下,量词是"贪婪"的,会尽可能多地匹配字符。添加 ? 使其变为"惰性"匹配,尽可能少地匹配字符。正则表达式详解书籍解释了贪婪匹配和惰性匹配的区别。

例如,/a{2,4}/ 匹配 2 到 4 个连续的 a,/d+/ 匹配一个或多个数字。量词对于验证字符数限制也很有用。

量词的过度嵌套可能导致灾难性回溯 (ReDoS),因此需要注意性能。编程安全指南介绍了 ReDoS 防范措施。