Special Characters
a.k.a metacharacters
There are 12 characters with special meanings:
\^$.|?*+()[- this usually denotes the start of a custom character class.
- in Javascript regex, if we want to match a literal
]inside a character class, we need to escape it.
{- to type a literal
{, most flavors of regex don't require us to escape with\, unless it is part of a repetition operator (e.g.{1, 3})
- to type a literal
Inside character classes, the only special characters are -, ^, \, ]
^is only special if it appears at the start of the character class, ie.[a-z^]will match a-z and a literal^.[- /.]matches-,,/or.
Dot .
Matches any character but newline
If we wanted to match any character including newlines, we could do [\s\S]
A negated character class is often more appropriate than the dot.
ex. consider the text: "Type 1" errors and "Type 2" errors
- If we want to match inside quotes, we can negate
"as if to say "continue matching characters as long as it's not a"character "[^"]*"