Anchors ^ Start of string, or start of line in multi-line pattern \A Start of string $ End of string, or end of line in multi-line pattern \Z End of string \b Word boundary \B Not word boundary \< Start of word \> End of word Character Classes \c Control character \s White space \S Not white space \d Digit \D Not digit \w Word \W Not word \x Hexade­cimal digit \O Octal digit 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 Assertions ?= Lookahead assertion ?! Negative lookahead ?<= Lookbehind assertion ?!= or ?<! Negative lookbehind ?> Once-only Subexp­ression ?() Condition [if then] ?()| Condition [if then else] ?# Comment

Quanti­fiers * 0 or more {3} Exactly 3 + 1 or more {3,} 3 or more ? 0 or 1 {3,5} 3, 4 or 5 Add a ? to a quantifier to make it ungreedy. Escape Sequences \ Escape following character \Q Begin literal sequence \E End 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. Common Metach­ara­cters ^ [ . $ { * ( \ + ) | ? < > The escape character is usually \ Special Characters

New line \r Carriage return \t Tab \v Vertical tab \f Form feed \xxx Octal character xxx \xhh Hex character hh