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 ... |
Get Linux in a Nutshell, 6th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.