1.运算符优先级
默认情况下,和算术表达式类似,正则表达式按照从左到右顺序计算或匹配,相同优先级的从左到右进行运算,不同优先级的运算先高后低。
从高到低各种正则表达式运算符的优先级如下所示(注:表格数据来源于w3school):
或运算符(也称为选择运算符)在正则表达式中具有最低的优先级,也就是说,它告诉引擎要么匹配选择符左边的所有表达式,要么匹配右边的所有表达式。
比如有正则表达式 abc|edf,按照优先级,它要么匹配abc要么匹配edf,而不是在c和e之间择其一。
2. 零宽度断言
正则表达式中,有一类是标明位置而不匹配具体字符的特殊标识符。