Assembly & Disassembly
ARM-Konverter
X86-Konverter
MIPS-Konverter
PowerPC-Konverter
Konverter
Datum-Uhrzeit-Konverter
Ganzzahl-Basiskonverter
Römische Zahlen Konverter
Base64-String-Encoder/Decoder
Base64-Dateikonverter
Farbkonverter
Text zu ASCII-Binär
Text zu Unicode
YAML zu JSON
YAML zu TOML
JSON zu YAML
JSON zu TOML
TOML zu JSON
TOML zu YAML
XML to JSON
JSON to XML
Markdown to HTML
Krypto
Token-Generator
Text hashen
Bcrypt
UUID-Generator
ULID-Generator
Text verschlüsseln / entschlüsseln
BIP39-Passphrasengenerator
HMAC-Generator
RSA-Schlüsselpaar-Generator
Passwortstärken-Analysator
PDF-Signaturprüfer
Web
Kodieren/Decodieren von URL-formatierten Zeichenfolgen
HTML-Entity-Escape
URL-Parser
Geräteinformationen
Browser-Fingerabdruck-Prüfer
Open Graph Meta-Generator
OTP-Code-Generator
MIME-Typen
JWT-Parser
HTML-WYSIWYG-Editor
User-Agent-Parser
HTTP-Statuscodes
JSON-Unterschied
Bilder & Videos
QR-Code-Generator
WLAN-QR-Code-Generator
Kamera-Rekorder
Entwicklung
Crontab-Generator
JSON verschönern und formatieren
JSON minifizieren
JSON zu CSV
SQL verschönern und formatieren
Chmod-Rechner
Docker run zu Docker compose Konverter
XML-Formatter
YAML verschönern und formatieren
Regex Tester
Regex cheatsheet
Netzwerk
IPv4-Subnetzrechner
IPv4-Adresskonverter
IPv4-Bereichserweiterer
MAC-Adressensuche
MAC-Adressen-Generator
IPv6-ULA-Generator
Mathematik
Mathematischer Auswerter
Messung
Chronometer
Temperaturkonverter
Text
Textstatistiken
Emoji-Picker
Textunterschied
ASCII Art Text Generator
© 2025 XFreeTool
Deutsch
English
简体中文
Español
Français
Português
Deutsch
日本語
Norwegian
繁體中文
한국어
Русский
Tiếng Việt
Українська
हिन्दी
বাংলা
Bahasa Indonesia

Regex cheatsheet

Javascript Regex/Regular Expression cheatsheet

Normal characters

ExpressionDescription
. or [^\n\r]any character excluding a newline or carriage return
[A-Za-z]alphabet
[a-z]lowercase alphabet
[A-Z]uppercase alphabet
\d or [0-9]digit
\D or [^0-9]non-digit
_underscore
\w or [A-Za-z0-9_]alphabet, digit or underscore
\W or [^A-Za-z0-9_]inverse of \w
\Sinverse of \s

Whitespace characters

ExpressionDescription
space
\ttab
\nnewline
\rcarriage return
\sspace, tab, newline or carriage return

Character set

ExpressionDescription
[xyz]either x, y or z
[^xyz]neither x, y nor z
[1-3]either 1, 2 or 3
[^1-3]neither 1, 2 nor 3
  • Think of a character set as an OR operation on the single characters that are enclosed between the square brackets.
  • Use ^ after the opening [ to “negate” the character set.
  • Within a character set, . means a literal period.

Characters that require escaping

Outside a character set

ExpressionDescription
\.period
\^caret
\$dollar sign
|pipe
\\back slash
\/forward slash
\(opening bracket
\)closing bracket
\[opening square bracket
\]closing square bracket
\{opening curly bracket
\}closing curly bracket

Inside a character set

ExpressionDescription
\\back slash
\]closing square bracket
  • A ^ must be escaped only if it occurs immediately after the opening [ of the character set.
  • A - must be escaped only if it occurs between two alphabets or two digits.

Quantifiers

ExpressionDescription
{2}exactly 2
{2,}at least 2
{2,7}at least 2 but no more than 7
*0 or more
+1 or more
?exactly 0 or 1
  • The quantifier goes after the expression to be quantified.

Boundaries

ExpressionDescription
^start of string
$end of string
\bword boundary
  • How word boundary matching works:
    • At the beginning of the string if the first character is \w.
    • Between two adjacent characters within the string, if the first character is \w and the second character is \W.
    • At the end of the string if the last character is \w.

Matching

ExpressionDescription
foo|barmatch either foo or bar
foo(?=bar)match foo if it’s before bar
foo(?!bar)match foo if it’s not before bar
(?<=bar)foomatch foo if it’s after bar
(?<!bar)foomatch foo if it’s not after bar

Grouping and capturing

ExpressionDescription
(foo)capturing group; match and capture foo
(?:foo)non-capturing group; match foo but without capturing foo
(foo)bar\1\1 is a backreference to the 1st capturing group; match foobarfoo
  • Capturing groups are only relevant in the following methods:
    • string.match(regexp)
    • string.matchAll(regexp)
    • string.replace(regexp, callback)
  • \N is a backreference to the Nth capturing group. Capturing groups are numbered starting from 1.

References and tools

  • MDN
  • RegExplained