Order of Precedence
A regular expression is evaluated from left to right and follows an order of precedence, much like an arithmetic expression.
Operators
The following table illustrates, from highest to lowest, the order of precedence of the various regular expression operators:
Operator(s) |
Description |
---|---|
\ |
Escape |
(), (?:), (?=), [] |
Parentheses and Brackets |
*, +, ?, {n}, {n,}, {n,m} |
Quantifiers |
^, $, \anymetacharacter, anycharacter |
Anchors and Sequences |
| |
Alternation |
Characters have higher precedence than the alternation operator, which allows 'm|food' to match "m" or "food". To match "mood" or "food", use parentheses to create a subexpression, which results in '(m|f)ood'.