Jartap Jartap
首页
  • 正则表达式
  • 字符匹配基础
  • 量词与重复匹配
  • 分组与引用
  • 各语言正则表达式用法概览

量词与重复匹配

量词在正则表达式中非常实用。 例如有一段文本:今天是公元2030年,匹配出2030;不使用量词的正则表达式\d\d\d\d, 使用量词\d{4},可以看出量词使表达式更简洁

基础

量词 名称 匹配次数 示例(模式a) 匹配结果示例
* 星号 0次或多次(贪婪) a* "", "a", "aaa"
+ 加号 1次或多次(贪婪) a+ "a", "aaa"
? 问号 0次或1次 a? "", "a"
{n} 精确量词 恰好n次 a{3} "aaa"
{n,} 下限量词 至少n次 a{2,} "aa", "aaaa"
{n,m} 范围量词 n到m次 a{2,4} "aa", "aaa", "aaaa"

贪婪 vs 懒惰(非贪婪)模式

类型 表示法 匹配策略 示例(a.*b vs a.*?b)
贪婪 默认量词 尽可能多匹配 "aabab" → 匹配整个"aabab"
懒惰 量词后加? 尽可能少匹配 "aabab" → 匹配"aab"和"ab"