A number of Linux text-editing utilities
let you search for and, in some cases change,
text patterns rather than fixed strings.
These utilities include the editing programs
ed, ex, vi, and sed;
the awk scripting language; and
the commands grep and egrep.
Text patterns (also called regular expressions)
contain normal characters mixed with
special characters (also called metacharacters).
Perl's regular expression support is so rich that it does not
fit into the tables in this chapter; you can find a description in the O'Reilly books
Perl in a Nutshell, Perl 5 Pocket
Reference, or Programming Perl. The
Emacs editor also provides regular expressions similar to those shown
in this chapter.
ed and ex are hardly ever used as standalone,
interactive editors nowadays. But ed
can be found as a batch processor invoked from shell scripts, and
ex commands often are invoked within
vi through the colon
(:) command. We use
vi in this chapter to refer to the
regular expression features supported by both
vi and the
ex editor on which it is based.
sed and awk
are widely used in shell scripts and elsewhere as filters to alter text.
This chapter presents the following information:
Filenames versus patterns
List of metacharacters available to each program
Description of metacharacters
Examples
A thorough guide to pattern matching can be found in the Nutshell handbook
Mastering Regular Expressions by Jeffrey E. F. Friedl.