JavaScipt ES6 RegExp Cheatsheet
/pattern/flags
new Regexp(pattern[,flags])
Special characters meaning
Boundaries |
|
^ |
Start of string |
$ |
End of string |
\b |
A word boundary |
\B |
Non-word boundary |
|
Character classes |
. |
Any single character |
\s |
Any whitespace character |
\S |
Any non-whitespace character |
\d |
Any digit |
\D |
Any non-digit |
\w |
Any word character |
\W |
Any non-word character |
\t |
Tab |
\r |
Carrige return |
\n |
NewLine |
\v |
Vertical whitespace character |
\f |
Form-feed |
[\b] |
Backspace character (Not to be confused with \b) |
\0 |
Null character |
\cX |
Control character X (X is a letter from A-Z) |
\xhh |
Hex character hh (two hexadecimal digits) |
\uhhhh |
Matches the unicode character with the given hex value (four hexadecimal digits) |
\ddd |
Octal character ddd |
|Makes any character literal |
|
\u{hhhh} |
U+hhhh (only when u flag is set) |
|
Quantifiers |
a? |
0 or 1 of a |
a* |
0 or more of a |
a+ |
1 or more of a |
a{3} |
Exactly 3 of a |
a{3,} |
3 or more of a |
a{3,6} |
Between 3 and 6 of a |
a* |
Greedy quantifiers |
a*? |
Lazy quantifiers |
|
Grouping and back references |
(...) |
Capture everything enclosed |
(?:...) |
Match everything enclosed (no capture group) |
\n |
Match nth subpattern (n=number) |
|
Assertions |
(?=...) |
Positive lookahead |
(?!...) |
Negative lookahead |
|
Character Sets |
[abc] |
A character of: a, b or c |
[^abc] |
A character except: a, b or c |
[a-z] |
A character in the range: a to z |
[^a-z] |
A character not in the range: a to z |
[a-zA-z] |
A character in the range: a to z or a-z |
|
Alternation |
(a|b) |
Match either a or b |
|
Flags/Modifiers |
g |
Global |
m |
Multiline |
i |
Case insensitive |
u |
Unicode |
y |
Sticky |
|
RegExp |
prototype |
Allows the addition of properties to all objects. |
lastIndex |
The index at which to start the next match. |
|
RegExp.prototype |
flags |
A string that contains the flags of the RegExp object. |
global |
Whether to test the regular expression against all possible matches in a string. |
ignoreCase |
Whether to ignore case. |
multiline |
Whether or not to search in strings across multiple lines. |
source |
The text of the pattern. |
sticky |
Whether or not the search is sticky. |
unicode |
Whether or not Unicode features are enabled. |
|
RegExp.prototype |
exec() |
Executes a search for a match in its string parameter. |
test() |
Tests for a match in its string parameter. |
[Symbol.match] |
Performs match to given string and returns match result. |
[Symbol.replace] |
Replaces matches in given string with new substring. |
[Symbol.search] |
Searches the match in given string and returns the index the pattern found in the string. |
[Symbol.split] |
Splits given string into an array by separating the string into substring. |
toString() |
Returns a string representing the specified object. |