12.7. Bonus section for Unix / Linux users¶
Support for searching files using regular expressions was built into the Unix operating system since the 1960s and it is available in nearly all programming languages in one form or another.
As a matter of fact, there is a command-line program built into Unix
called grep (Generalized Regular Expression Parser)
that does pretty much the same as the
search() examples in
this chapter. So if you have a Macintosh or Linux system, you can try
the following commands in your command-line window.
$ grep '^From:' mbox-short.txt From: email@example.com From: firstname.lastname@example.org From: email@example.com From: firstname.lastname@example.org
grep to show you lines that start with the
string “From:” in the file mbox-short.txt. If you
experiment with the
grep command a bit and read the
grep, you will find some subtle
differences between the regular expression support in Python and the
regular expression support in
grep. As an example,
grep does not support the non-blank character
\S so you will need to use the slightly more complex set
[^ ], which simply means match a character that is anything
other than a space.