SSH

Character Sets For Egrep

A character set starts with '[' and ends at non-escaped ']' that is not part of a POSIX character set specifier and that does not follow immediately after '['.

The following characters have a special meaning and need to be escaped if meant literally:

- (minus sign)

A range operator, except immediately after '[', where it loses its special meaning.

^

If immediately after the starting '[', denotes a complement: the whole character set will be complemented. Otherwise literal '^'.

[:alnum:]

Characters for which 'isalnum' returns true.

[:alpha:]

Characters for which 'isalpha' returns true.

[:cntrl:]

Characters for which 'iscntrl' returns true.

[:digit:]

Characters for which 'isdigit' returns true.

[:graph:]

Characters for which 'isgraph' returns true.

[:lower:]

Characters for which 'islower' returns true.

[:print:]

Characters for which 'isprint' returns true.

[:punct:]

Characters for which 'ispunct' returns true.

[:space:]

Characters for which 'isspace' returns true.

[:upper:]

Characters for which 'isupper' returns true.

[:xdigit:]

Characters for which 'isxdigit' returns true.

Example: [[:xdigit:]XY] is typically equivalent to [0123456789ABCDEFabcdefXY] .

It is also possible to include the predefined escaped character sets into a newly defined one, so [\d\s] matches digits and whitespace characters.

Also, escape sequences resulting in literals work inside character sets.