Essentially, the following are available: Metacharacters ., [...] and [^...]; +, * and ? quantifiers; Anchors ^, $, \< and \>; Alternation |; Subexpressions (...); Cheap character classes \x where x is a letter which maps to a primitive ctype.h function, as follows: \m: isalnum() \a: isalpha() \b: isblank() (GNU extension to ctype.h; essentially maps space and tab)