| chars | action | Perl | grep | egrep | lex/flex |
| abc... | Match that character (metacharacters excluded) | Perl | grep | egrep | lex/flex |
| \\\.\*... | Match that metacharacter following the back slash | Perl | uses sh | uses sh | lex/flex |
| "" | De-meta any chars inside quotes | | | | lex/flex |
| \t,\n,\r,\f | tab, newline, return, form feed | Perl | grep | egrep | lex/flex |
| . | Match any character (not newline in lex) | Perl | grep | egrep | lex/flex (not \n) |
| [] | Character class | Perl | grep | egrep | lex/flex |
| [^] | Inverse Character class | Perl | grep | egrep | lex/flex |
| [-] | Character ranges | Perl | grep | egrep | lex/flex |
| \w | Match a "word" character (alphanumeric plus "_") | Perl | | | |
| \W | Match a non-word character | Perl | | | |
| \s | Match a whitespace character | Perl | | | |
| \S | Match a non-whitespace character | Perl | | | |
| \d | Match a digit character | Perl | | | |
| \D | Match a non-digit character | Perl | | | |
| anchors | action | Perl | grep | egrep | lex/flex |
| ^ | Match the beginning of the line | Perl | grep | egrep | lex/flex |
| $ | Match the end of the line | Perl | grep | egrep | lex/flex |
| \b | Match a word boundary | Perl | | | |
| \B | Match a non-(word boundary) | Perl | | | |
| operators | action | Perl | grep | egrep | lex/flex |
| | | Alternation | Perl | | egrep | lex/flex |
| () | Grouping | Perl | | egrep | lex/flex |
| multiplicity | action | Perl | grep | egrep | lex/flex |
| * | Greedy match 0 or more times | Perl | grep | egrep | lex/flex |
| + | Greedy match 1 or more times | Perl | | egrep | lex/flex |
| ? | Greedy match 1 or 0 times | Perl | grep | egrep | lex/flex |
| {n} | Greedy match exactly n times | Perl | | egrep | |
| {n,} | Greedy match at least n times | Perl | | egrep | |
| {n,m} | Greedy match at least n but not more than m times | Perl | | egrep | lex/flex |
| lookAhead | action | Perl | grep | egrep | lex/flex |
| / | Look ahead predicate | | | | lex/flex |
| (?= ) | Look ahead predicate | Perl | | | |
| (?! ) | NOT Look ahead predicate | Perl | | | |
| dog | matches the string "dog" |
| "dog" | also matches the string "dog" |
| "()[]" | matches the string "()[]" |
| [dog] | matches matches one character: a "d" an "o" or a "g" |
| [dog]* | matches matches a string of zero or more characters from the set {"d" an "o" or a "g"} |
| dog* | matches matches the string "do" followed by zero or more "g"s |
| (dog)* | matches matches a sequence of zero or more three letter string "dog"s |
| (dog|cat) | matches the string "dog" or the string "cat" |
| dog.*cat | matches the string "dog" followed by the string "cat" |
| x(dog|cat|bat)x | matches the string "dog" or the string "cat" or the string "bat" between two "x"s |
| xx* | matches a string of one or more "x"s |
| x+ | matches a string of one or more "x"s |
| x(dog|cat)?x | matches two "x"s with optionally the string "dog" or the string "cat" between the "x"'s |
| [aeiou] | matches a single vowel |
| [A-Z]+ | matches a string of one or more uppercase characters |
| [az-]+ | matches a string of one characters from the set or three characters "a", "z", "-" |
| [^a-z]+ | matches a string of one or more characters that are not lowercaase letters |
| "[a-z]" | in flex matches exactly the five character string "[a-z]" |
| [a-zA-Z][a-zA-Z0-9]* | matches a letter optionally followed by letters or digits |
| [1-9][0-9]*|0 | matches a positive integer with no leading zero except when the number is zero |
| [+-]?[0-9]+ | matches an integer with optional sign (note that leading zeroes are allowed |
| ([0-9].)* | matches an even number of characters where every odd numbered character is a digit |
| [+-]?[1-9][0-9]*|0 | matches an integer with no leading zero except when the number is zero. The number may have an optional sign |
| [\^\+\-\:\*\]] | matches one of the 6 characters: "^", "+", "-", ":", "*", "]" |
| [^\+\-\:\*\]] | matches not one of the 5 characters: "+", "-", ":", "*", "]" |
| .|\n | matches any character in lex. The newline had to be added because . did not cover newline in lex.
|