+---------+---------+---------+---------+----------+---------+-----------------------------------+ | sed | awk | perl | grep -P | vim | emacs | DESC | +---------+---------+---------+---------+----------+---------+-----------------------------------+ |Special Characters | +------------------------------------------------------------+-----------------------------------+ | . |any character in single line | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | [0-9] | [0-9] | /d | /d | /d | [0-9] |single digit | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /w | /w | /w | /w | /w | /w |single word character [a-zA-Z0-9_] | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | [ /t] | [ /t] | /s | /s | /s | [ /t] |single white space | +---------+---------+---------+---------+----------+---------+-----------------------------------+ |Grouping/Character Groups | +------------------------------------------------------------+-----------------------------------+ | [...] |any character inside | +------------------------------------------------------------+-----------------------------------+ | [^...] |any character not inside | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /| | | | | | | | /| | /| |alternation | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /(.../) | (...) | (...) | (...) | /(.../) | /(.../) |capturing for later references | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | N/A | (?:...) | (?:...) | /%(.../) |/(?:.../)|non-capturing group | +---------+---------+---------+---------+----------+---------+-----------------------------------+ |Positions | +------------------------------------------------------------+-----------------------------------+ | ^ |beginning of line | +------------------------------------------------------------+-----------------------------------+ | $ |end of line | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /< | /< | /b | /b | /< | /< |left word boundary | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /> | /> | /b | /b | /> | /> |right word boundary | +---------+---------+---------+---------+----------+---------+-----------------------------------+ |Repeaters | +------------------------------------------------------------+-----------------------------------+ | * |0 or more times | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | ? | ? | ? | /= | ? |0 or 1 time | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /+ | + | + | + | /+ | + |1 or more times | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | /{m,n/} | N/A | {m,n} | {m,n} | /{m,n} | N/A |m<= match times <=n | +---------+---------+---------+---------+----------+---------+-----------------------------------+ |Non greedy match | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | N/A | *? | *? | /{-} | *? |non greedy match | +---------+---------+---------+---------+----------+---------+-----------------------------------+ |Look-Ahead/Look-Behind Assertion | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | N/A | (?=...) | (?=...) |/(../)/@= | N/A |0 width positive look-ahead | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | N/A | (?!...) | (?!...) |/(../)/@! | N/A |0 width negative look-ahead | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | N/A |(?<=...) |(?<=...) |/(../)/@<=| N/A |0 width positive look-behind | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | N/A | N/A |(?<!...) |(?<!...) |/(../)/@<!| N/A |0 width negative look-behind | +---------+---------+---------+---------+----------+---------+-----------------------------------+ | sed | awk | perl | grep -P | vim | emacs | DESC | +---------+---------+---------+---------+----------+---------+-----------------------------------+