EBNF

A human-friendly form of Regex used for pattern matching.

ElementSyntax
Non-terminal (like variable)<a>
Assignment<-
Terminal (literal)7, a (no angle brackets)
Sequence<a> <b>
Repetition (0 or more times){ <a> }
Optional (0 or 1 time)[ <a> ]
Choice (alternatives)<a> | <b>
Grouping(<a> | <b>) <c>