Regular Expression Cheat Sheet (RECS)

Regular Expressions Anchors
^Start of string, or start of line in multi-line pattern
\AStart of string
$End of string, or end of line in multi-line pattern
\ZEnd of string
\bWord boundary
\BNot word boundary
\<Start of word
\>End of word
Regular Expressions Character Classes
\cControl character
\sWhite space
\SNot white space
\dDigit
\DNot digit
\wWord
\WNot word
\xHexade­cimal digit
\OOctal digit
Regular Expressions POSIX
[:upper:]Upper case letters
[:lower:]Lower case letters
[:alpha:]All letters
[:alnum:]Digits and letters
[:digit:]Digits
[:xdigit:]Hexade­cimal digits
[:punct:]Punctu­ation
[:blank:]Space and tab
[:space:]Blank characters
[:cntrl:]Control characters
[:graph:]Printed characters
[:print:]Printed characters and spaces
[:word:]Digits, letters and underscore
Regular Expressions Assertions
?=Lookahead assertion
?!Negative lookahead
?<=Lookbehind assertion
?!= or ?<!Negative lookbehind
?>Once-only Subexp­ression
?()Condition [if then]
?()|Condition [if then else]
?#Comment
Regular Expressions Quantifiers
*0 or more
+1 or more
?0 or 1
{3}Exactly 3
{3,}3 or more
{3,5}3, 4 or 5
Add a ? to a quantifier to make it ungreedy.
Regular Expressions Escape Sequences
\Escape following character
\QBegin literal sequence
\EEnd literal sequence
"­Esc­api­ng" is a way of treating characters which have a special meaning in regular expres­sions literally, rather than as special charac­ters.
Regular Expression Common Metacharacters
^[.
${*
(\+
)|?
<> 
The escape character is usually the backslash - \.
Regular Expressions Special Characters
\nNew line
\rCarriage return
\tTab
\vVertical tab
\fForm feed
\xxxOctal character xxx
\xhhHex character hh
Regular Expressions Groups and Ranges
.Any character except new line (\n)
(a|b)a or b
(...)Group
(?:...)Passive (non-c­apt­uring) group
[abc]Range (a or b or c)
[^abc]Not a or b or c
[a-q]Letter from a to q
[A-Q]Upper case letter from A to Q
[0-7]Digit from 0 to 7
\nnth group/­sub­pattern
Ranges are inclusive.
Regular Expressions Pattern Modifiers
gGlobal match
iCase-i­nse­nsitive
mMultiple lines
sTreat string as single line
xAllow comments and white space in pattern
eEvaluate replac­ement
UUngreedy pattern
Regular Expressions String Replacement
$nnth non-pa­ssive group
$2"­xyz­" in /^(abc­(xy­z))$/
$1"­xyz­" in /^(?:a­bc)­(xyz)$/
$`Before matched string
$'After matched string
$+Last matched string
$&Entire matched string
Some regex implem­ent­ations use \ instead of $.

SOURCE

DaveChild's Cheatography profile

AUTHOR COMMENT

I would like to take this opportunity to thank the source from which I stole this dataset.

If it was not for him, I would not have been able to make this site. I am Thaoh, and this is but a tribute.

As a side note, if Cheatography wants to improve their design.. I bid you welcome. If you happen to want to hire me; I have an account on your site :D