Examples of Searching
When used with grep or egrep, regular expressions should be surrounded by quotes. (If the pattern contains a $, you must use single quotes; e.g., 'pattern'.) When used with ed, ex, sed, and gawk, regular expressions are usually surrounded by /, although (except for gawk) any delimiter works. The following tables show some sample patterns.
Pattern | What does it match? |
|---|---|
bag | The string bag. |
^bag | bag at the beginning of the line. |
bag$ | bag at the end of the line. |
^bag$ | bag as the only word on the line. |
[Bb]ag | Bag or bag. |
b[aeiou]g | Second letter is a vowel. |
b[^aeiou]g | Second letter is a consonant (or uppercase or symbol). |
b.g | Second letter is any character. |
^...$ | Any line containing exactly three characters. |
^\. | Any line that begins with a dot. |
^\.[a-z][a-z] | Same, followed by two lowercase letters (e.g., troff requests). |
^\.[a-z]\{2\} | Same as previous; ed, grep, and sed only. |
^[^.] | Any line that doesn’t begin with a dot. |
bugs* | bug, bugs, bugss, etc. |
“word” | A word in quotes. |
“*word"* | A word, with or without quotes. |
[A-Z][A-Z]* | One or more uppercase letters. |
[A-Z]+ | Same; egrep or gawk only. |
[[:upper:]]+ | Same as previous, egrep or gawk. |
[A-Z].* | An uppercase letter, followed by zero or more characters. |
[A-Z]* | Zero or more uppercase letters. |
[a-zA-Z] | Any letter, either lower- or uppercase. |
[^0-9A-Za-z] | Any symbol or space (not a letter or a number). |
[^[:alnum:]] | Same, using POSIX character class. |
egrep or gawk pattern | What does it match? |
[567] | One of the numbers 5, 6, or 7. |
five|six|seven | One of the words five, six, or seven ... |
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access