+@node Char Classes
+@subsubsection Character Classes
+@cindex character classes in regexp
+
+ Here is a table of the classes you can use in a character alternative,
+in Emacs 21, and what they mean:
+
+@table @samp
+@item [:ascii:]
+This matches any @sc{ascii} (unibyte) character.
+@item [:alnum:]
+This matches any letter or digit. (At present, for multibyte
+characters, it matches anything that has word syntax.)
+@item [:alpha:]
+This matches any letter. (At present, for multibyte characters, it
+matches anything that has word syntax.)
+@item [:blank:]
+This matches space and tab only.
+@item [:cntrl:]
+This matches any @sc{ascii} control character.
+@item [:digit:]
+This matches @samp{0} through @samp{9}. Thus, @samp{[-+[:digit:]]}
+matches any digit, as well as @samp{+} and @samp{-}.
+@item [:graph:]
+This matches graphic characters---everything except @sc{ascii} control
+characters, space, and the delete character.
+@item [:lower:]
+This matches any lower-case letter, as determined by
+the current case table (@pxref{Case Tables}).
+@item [:nonascii:]
+This matches any non-@sc{ascii} (multibyte) character.
+@item [:print:]
+This matches printing characters---everything except @sc{ascii} control
+characters and the delete character.
+@item [:punct:]
+This matches any punctuation character. (At present, for multibyte
+characters, it matches anything that has non-word syntax.)
+@item [:space:]
+This matches any character that has whitespace syntax
+(@pxref{Syntax Class Table}).
+@item [:upper:]
+This matches any upper-case letter, as determined by
+the current case table (@pxref{Case Tables}).
+@item [:word:]
+This matches any character that has word syntax (@pxref{Syntax Class
+Table}).
+@item [:xdigit:]
+This matches the hexadecimal digits: @samp{0} through @samp{9}, @samp{a}
+through @samp{f} and @samp{A} through @samp{F}.
+@end table
+
+@node Regexp Backslash
+@subsubsection Backslash Constructs in Regular Expressions
+
+ For the most part, @samp{\} followed by any character matches only
+that character. However, there are several exceptions: certain
+two-character sequences starting with @samp{\} that have special
+meanings. (The character after the @samp{\} in such a sequence is
+always ordinary when used on its own.) Here is a table of the special
+@samp{\} constructs.