正则表达式引擎类型与匹配基础详解
1. 正则表达式量词与元字符
1.1 量词类型
正则表达式中有多种量词,它们用于控制匹配的数量,以下是常见的几种量词类型:
- 贪婪量词 :如 * 、 + 、 ? 和 {num,num} 。这些量词通常会尽可能多地匹配字符。例如, a+ 会匹配一个或多个连续的 a 。在某些工具中,可能会使用 \+ 和 \? 来替代 + 和 ? 。需要注意的是,一些较旧的工具可能不支持将量词应用于反向引用或括号组。
- 区间量词 :表示为 {min,max} 或 \{min,max \} ,可以看作是“计数量词”,因为你可以精确指定所需匹配的最小数量和允许匹配的最大数量。如果只给出一个数字,如 [a-z]{3} 或 [a-z]\{3\} ,则表示精确匹配该数量的字符,等同于 [a-z][a-z][a-z] 。不过,要注意不能使用 X{0,0} 来表示“这里不能有 X”,因为它实际上没有匹配要求,等同于该表达式不存在,若后续表达式能匹配到 X,仍会进行匹配。若要实现“必须不存在”的效果,应使用负向前瞻。
-
正则表达式引擎类型解析
超级会员免费看
订阅专栏 解锁全文
1501

被折叠的 条评论
为什么被折叠?



