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.
^
or !
(latter applies to ZSH_FILEGLOB)If immediately after the starting [
, denotes a complement: the whole
character set will be complemented. Otherwise, literal.
[:alnum:]
Characters for which isalnum
returns true
(see ctype.h).
[:alpha:]
Characters for which isalpha
returns true
(see ctype.h).
[:cntrl:]
Characters for which iscntrl
returns
true
(see ctype.h).
[:digit:]
Characters for which isdigit
returns true
(see ctype.h).
[:graph:]
Characters for which isgraph
returns true
(see ctype.h).
[:lower:]
Characters for which islower
returns true
(see ctype.h).
[:print:]
Characters for which isprint
returns true
(see ctype.h).
[:punct:]
Characters for which ispunct
returns true
(see ctype.h).
[:space:]
Characters for which isspace
returns true
(see ctype.h).
[:upper:]
Characters for which isupper
returns true
(see ctype.h).
[:xdigit:]
Characters for which isxdigit
returns true
(see ctype.h).
3.137.188.11