正規表達式從左到右進行計算,并遵循優先級順序,這與算術表達式非常類似。
相同優先級的從左到右進行運算,不同優先級的運算先高後低。下表從最高到最低說明了各種正規表達式運算符的優先級順序:
運算符
描述
\
轉義符
(), (?:), (?=), []
圓括号和方括号
*, +, ?, {n}, {n,}, {n,m}
限定符
^, $, \任何元字元、任何字元
定位點和序列(即:位置和順序)
|
替換,"或"操作
字元具有高于替換運算符的優先級,使得"m|food"比對"m"或"food"。若要比對"mood"或"food",請使用括号建立子表達式,進而産生"(m|f)ood"。