| ^ | Beginning of a line |
| $ | End of a line |
| . | Any character |
| Expression? | The expression zero or one times |
| Expression* | The expression zero or more times |
| Expression+ | The expression one or more times |
| Expression{n} | The expression n times |
| Expression{n,} | The expression at least n times |
| Expression{n,m} | The expression at least n but no more than m times |
| Expression1|Expression2 | The expression1 or the expression2 |
| (Expression) | The expression within the brackets |
| \1 \2 ... \n | The content of the nth bracket |
| [abc] | One of a, b, or c |
| [a-z] | A letter from a to z |
| [^abc] | Any letter appart from a, b, and c. |
| \t | The character tab |
| \n | The character newline |
| \r | The character carriage return |
| \a | The character alert |
| \f | The character form feed |
| \e | The character escape |
| \cx | The character control-x (a-z) |
| \d | Digit |
| \D | Non-digit |
| \s | Space |
| \S | Non-space |
void (*signal(int sig, void (*func)(int)))(int); declare signal as function that expects (sig as int, func as pointer to function that expects (int) returning void) returning pointer to function that expects (int) returning void;