Grond definities :-
  <ch>      ::= ieder typebaar karakter
  <digit>   ::= ieder cijfer van '0' tot '9'
  <digits>  ::= <digit> { <digit> }
  <digit19> ::= ieder cijfer van '1' tot '9'
  <hext>    ::= ieder cijfer of letter van 'a' tot 'f' of 'A' tot 'F'

Basis karakter definities :-

  <c> ::= '\n'                    nieuwe regel
        | '\t'                    tab
        | '\r'                    wagen terugloop
        | '\b'                    spatie terug
        | '\f'                    nieuwe bladzijde
        | '\e'                    escape
        | '\x' <hex> ( <hex> )    specificeer karakter in hex, ‚‚n of twee hex cijfers
        | '\' <ch>                ander karakter, iedere speciale betekenis overslaan
        | <ch>                    gewoon karakter

Element tussen haken (iets dat tussen vierkante haken staat) :-

  <be> ::= <c>                    een karakter
         | <c> '-' <c>            een groep karakters
         | '[:alnum:]'            alfanumerieke karakters in POSIX
         | '[:alpha:]'            alfabetische karakters in POSIX
         | '[:blank:]'            spatie en tab in POSIX
         | '[:cntrl:]'            controle karakters in POSIX
         | '[:digit:]'            numerieke karakters in POSIX
         | '[:graph:]'            afdrukbare en zichtbare karakters (geen spatie) in POSIX
         | '[:lower:]'            kleine letters in POSIX
         | '[:print:]'            alfanumerieke karakters in POSIX
         | '[:punct:]'            leestekens in POSIX
         | '[:space:]'            witruimte in POSIX
         | '[:upper:]'            hoofdletters in POSIX
         | '[:xdigit:]'           hexadecimale cijfers in POSIX
         | '[.' ??? '.]'          verzamel symbolen in POSIX en
         | '[=' ??? '=]'          gelijkwaardige classes in POSIX
                                  WORDEN NIET ONDERSTEUND

Uitdrukkingen tussen haken :-

  <bx> ::= [ '^' ] { <be> }       definieert een aantal aanvaardbare karakters
                                  of een aantal niet te aanvaarden (als '^' aanwezig is)

Uitgebreide Vaste uitdrukkingen :-

  <re> ::=                        lege vaste uitdrukking
         | <c>                    karakter
         | '~' <c>                niet gespecificeerd karakter
                                  stenografie voor '[^' <c> ']'
         | '\w'                   past op ieder 'woord samenstellend' karakter
                                  stenografie voor '[[:alnum:]_]'
         | '\W'                   past op ieder niet 'woord samenstellend' karakter
                                  stenografie voor '[^[:alnum:]_]'
         | '.'                    past op elk karakter (maar niet einde van een regel)
         | '[' <bx> ']'           past op karakters tussen haken
         | '^'                    past op een lege reeks aan het begin van een 'regel'
         | '$'                    past op een lege reeks aan het einde van een 'regel'
         | '\`'                   synoniem voor '^'
         | '\''                   synoniem voor '$'
         | '\<'                   past op een lege reeks aan het begin van een 'woord'
         | '\>'                   past op een lege reeks aan het einde van een 'woord'
         | '\B'                   past op een lege reeks in een 'woord'
         | '\y'                   past op een lege reeks aan het begin of einde van een 'woord'
                                  stenografie voor '(\<|\>)'
                                  opmerking: niet '\b', want dit botst met spatie terug
         | <re> <re>              2 <re>'s keten uit een <re>
         | '(' <re> ')'           een geneste vaste uitdrukking
         | '\' <digit19>          terugverwijzing naar een geneste vaste uitdrukking
         | <re> '?'               nul of ‚‚n overeenkomst met <re>
         | <re> '+'               ‚‚n of meer overeenkomsten met <re>
         | <re> '*'               nul of meer overeenkomsten met <re>
         | <re> '{' <digits> '}'  past op M overeenkomsten met <re>
         | <re> '{' <digits> ',}' past op z'n minst op M overeenkomsten met <re>
         | <re> '{' <digits> ','  <digits> '}'
                                  past tussen de M en N overeenkomsten met <re>
         | <re> '|' <re>          past op de ‚‚n <re> of de ander