/.../
: Start and end regex delimiters|
: Alternation()
: Grouping
^
: Start of string or start of line in multi-line mode\A
: Start of string$
: End of string or end of line in multi-line mode\Z
: End of string\b
: Word boundary\B
: Not word boundary\<
: Start of word\>
: End of word
\s
: Whitespace\S
: Not whitespace\w
: Word\W
: Not word\d
: Digit\D
: Not digit\x
: Hexadecimal digit\O
: Octal digit
\n
: Newline\r
: Carriage return\t
: Tab\v
: Vertical tab\f
: Form feed\xxx
: Octal character xxx\xhh
: Hex character hh
.
: Any character except newline (\n)(a|b)
: a or b(…)
: Group(?:…)
: Passive (non-capturing) group[abc]
: a, b or c[^abc]
: Not a, b or c[a-z]
: Letters from a to z[A-Z]
: Uppercase letters from A to Z[0-9]
: Digits from 0 to 9
Note: Ranges are inclusive.
*
: 0 or more+
: 1 or more?
: 0 or 1{3}
: Exactly 3{3,}
: 3 or more{3,5}
: 3, 4 or 5
Note: Quantifiers are greedy - they match as many times as possible. Add a ? after the quantifier to make it ungreedy.
\
:Escape following character. Used to escape any of the following metacharacters: {}^$.|*+?.\Q
: Begin literal sequence\E
: End literal sequence
$1
: 1st group$2
: 2nd group$n
: nth group$
: Before matched string$'
: After matched string$+
: Last matched string$&
: Entire matched string
Note: Some regex implementations use \ instead of $.
?=
: Lookahead assertion?!
: Negative lookahead?<=
: Lookbehind assertion?!=, ?<!
: Negative lookbehind?>
: Once-only subexpression?()
: Condition if-then?()|
: Condition if-then-else?#
: Comment
[:upper:]
: Uppercase letters[:lower:]
: Lowercase letters[:alpha:]
: All letters[:alnum:]
: Digits and letters[:digit:]
: Digits[:xdigit:]
: Hexadecimal digits[:punct:]
: Punctuation[:blank:]
: Space and tab[:space:]
: Blank characters[:cntrl:]
: Control characters[:graph:]
: Printed characters[:print:]
: Printed characters and spaces[:word:]
: Digits, letters and underscore
g
: Global matchi
: Case-insensitivem
: Multi-line mode. Causes ^ and $ to also match the start/end of lines.s
: Single-line mode. Causes . to match all, including line breaks.x
: Allow comments and whitespace in patterne
: Evaluate replacementU
: Ungreedy mode