Pattern details
- escaping to match metacharacters that would otherwise be treated specially.
- anchors to match the start or end of the string.
- character classes and their shortcuts to match any character from a set.
- quantifiers which control how many times a pattern can match.
- operator precedence and parentheses.
- grouping components of the pattern.