Regular Expressions 101

Save & Manage Regex

  • Current Version: 1
  • Save & Share
  • Community Library

Flavor

  • PCRE2 (PHP)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java
  • .NET 7.0 (C#)
  • Rust
  • PCRE (Legacy)
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests
Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Character class intersection
    [\w&&[^\d]]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression
Processing...

Test String

Code Generator

Generated Code

#include <StringConstants.au3> ; to declare the Constants of StringRegExp #include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate Local $sRegex = "(?i)<body[^>]+?>\s+(?<table>[\w\W]+)<\/body>" Local $sString = "<html>" & @CRLF & _ "<head>" & @CRLF & _ "<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">" & @CRLF & _ " <META NAME="Identifier-URL" CONTENT="http://www.hockey.de/">" & @CRLF & _ " <META NAME="keywords" CONTENT="Hockey">" & @CRLF & _ " <META NAME="copyright" CONTENT="&copy; hokey.de GbR">" & @CRLF & _ "<title>hockey.de: hoc@key Ergebnisdienst</title>" & @CRLF & _ "<link REL="STYLESHEET" HREF="/VVI-web/Include/css.asp?lokal=WHV" type="text/css">" & @CRLF & _ "<script src="/VVI-web/Include/DE-java.js" type="text/javascript"></script>" & @CRLF & _ "</head>" & @CRLF & _ "" & @CRLF & _ "<body bgcolor="#FFFFFF" topmargin=0 leftmargin=0 marginwidth=0 marginheight=0>" & @CRLF & _ "<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 WIDTH=806>" & @CRLF & _ "" & @CRLF & _ "<!== TABELLE - 2 SPALTEN ================================================>" & @CRLF & _ "<tr><td><table border=0 cellspacing=0 cellpadding=0 width=806>" & @CRLF & _ "" & @CRLF & _ "<!-- SPALTEN BREITE FIXIEREN -------------------------------------------->" & @CRLF & _ "<tr>" & @CRLF & _ "<td><img SRC="/VVI-web/Include/dummy.gif" height=1 width=600></td>" & @CRLF & _ "<td><img SRC="/VVI-web/Include/dummy.gif" height=1 width=6></td>" & @CRLF & _ "<td><img SRC="/VVI-web/Include/dummy.gif" height=1 width=200></td>" & @CRLF & _ "</tr>" & @CRLF & _ "" & @CRLF & _ "<!-- HAUPT SPALTE ------------------------------------------------------->" & @CRLF & _ "<tr><td valign=TOP><table border=0 cellspacing=0 cellpadding=0 width=600>" & @CRLF & _ "<!-- Seiten Titel -->" & @CRLF & _ " <tr height=62><td class=bghell>" & @CRLF & _ " <p style="padding-left:4px;margin-bottom:16px"><b>Wer spielt wo?</b></p>" & @CRLF & _ " <p class=TTitel style="text-align:CENTER">hoc@key Ergebnisdienst</p>" & @CRLF & _ " <tr><td>" & @CRLF & _ "" & @CRLF & _ "" & @CRLF & _ "<!-- Club, Men� -->" & @CRLF & _ "<tr><td align=CENTER><p class=Ueber>VfB H�ls</p></td></tr>" & @CRLF & _ "<tr><td align=CENTER><b>|" & @CRLF & _ "" & @CRLF & _ " <a href="?lokal=WHV&bereich=WHV&saison=&club=361&status=1&design=&tza=0&cza=1&erw=,WHV-VL1D-D,WHV-VL1D-H,WHV-VL2WE-H,WHV-VL4WE-H&jug=,WHV-JV-WJA,WHV-JV-MA,WHV-JV-MB,WHV-JV-MJB,WHV-JV-KB,WHV-WE-KC-M,WHV-WE-KD-M,WHV-WE-MINIS">Alle Ligen</a> |" & @CRLF & _ " " & @CRLF & _ " <b class=rot>Aktuelle Woche</b> |" & @CRLF & _ " " & @CRLF & _ " <a href="?lokal=WHV&bereich=WHV&saison=&club=361&status=3&design=&tza=0&cza=1&erw=,WHV-VL1D-D,WHV-VL1D-H,WHV-VL2WE-H,WHV-VL4WE-H&jug=,WHV-JV-WJA,WHV-JV-MA,WHV-JV-MB,WHV-JV-MJB,WHV-JV-KB,WHV-WE-KC-M,WHV-WE-KD-M,WHV-WE-MINIS">Rest-Saison</a> |" & @CRLF & _ " " & @CRLF & _ " <a href="?lokal=WHV&bereich=WHV&saison=&club=361&status=4&design=&tza=0&cza=1&erw=,WHV-VL1D-D,WHV-VL1D-H,WHV-VL2WE-H,WHV-VL4WE-H&jug=,WHV-JV-WJA,WHV-JV-MA,WHV-JV-MB,WHV-JV-MJB,WHV-JV-KB,WHV-WE-KC-M,WHV-WE-KD-M,WHV-WE-MINIS">Gesamte Saison</a> |" & @CRLF & _ " " & @CRLF & _ "</b></td></tr>" & @CRLF & _ "<tr><td><img src="/VVI-web/include/dummy.gif" width=1 height=15></td></tr>" & @CRLF & _ "" & @CRLF & _ "<!-- Spielplan -------------------------------------------------------->" & @CRLF & _ "" & @CRLF & _ " " & @CRLF & _ "<tr><td><table border=0 width=600 cellspacing=0 cellpadding=0>" & @CRLF & _ " <tr>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=180 height=1></td>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=50 height=1></td>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=120 height=1></td>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=15 height=1></td>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=130 height=1></td>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=40 height=1></td>" & @CRLF & _ " <td><img src="/VVI-web/include/dummy.gif" width=65 height=1></td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr height=25>" & @CRLF & _ " <td valign=BOTTOM colspan=5><b class=rot>Samstag, 2. M�rz 2024</b></td>" & @CRLF & _ " </tr>" & @CRLF & _ " " & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>12:30</td>" & @CRLF & _ " <td valign=TOP class=klein>HC GMH�tte</td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-WE-KC-M&club=361'>Liga MU10</a></td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>02</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>14:00</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-WE-KC-M&club=361'>Liga MU10</a></td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein>Buerscher HC</td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>05</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>15:00</td>" & @CRLF & _ " <td valign=TOP class=klein>Bielefelder TG</td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-WE-KC-M&club=361'>Liga MU10</a></td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>07</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>16:00</td>" & @CRLF & _ " <td valign=TOP class=klein>HSC 05 Osnabr�ck</td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-WE-KC-M&club=361'>Liga MU10</a></td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>09</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr height=25>" & @CRLF & _ " <td valign=BOTTOM colspan=5><b class=rot>Sonntag, 3. M�rz 2024</b></td>" & @CRLF & _ " </tr>" & @CRLF & _ " " & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>10:00</td>" & @CRLF & _ " <td valign=TOP class=klein>Club Raffelberg 4</td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-VL1D-D&club=361'>1.VL Damen</a></td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>29</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>12:00</td>" & @CRLF & _ " <td valign=TOP class=klein>THC M�nster 3</td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-VL2WE-H&club=361'>2.VL Herren</a></td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>29</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ " <tr>" & @CRLF & _ " <td valign=TOP class=klein></td>" & @CRLF & _ " <td valign=TOP class=klein>16:00</td>" & @CRLF & _ " <td valign=TOP class=klein>THC M�nster 2</td>" & @CRLF & _ " <td valign=TOP class=klein>-</td>" & @CRLF & _ " <td valign=TOP class=klein><a href='/VVI-web/Ergebnisdienst/Ergebnisdienst.asp?lokal=WHV&saison=HALLE23&liga=WHV-VL1D-H&club=361'>1.VL Herren</a></td>" & @CRLF & _ " <td valign=TOP class=klein>_:_</td>" & @CRLF & _ " <td valign=TOP class=klein align=RIGHT>29</td>" & @CRLF & _ " </tr>" & @CRLF & _ "" & @CRLF & _ "</table></td></tr>" & @CRLF & _ " " & @CRLF & _ "<!--------------------------------------------------------------------->" & @CRLF & _ "" & @CRLF & _ "" & @CRLF & _ "" & @CRLF & _ "</table></td>" & @CRLF & _ "" & @CRLF & _ "<!-- ZWISCHENRAUM ------------------------------------------------------->" & @CRLF & _ "<td>&nbsp;</td>" & @CRLF & _ "" & @CRLF & _ "<!-- RECHTE SPALTE ------------------------------------------------------>" & @CRLF & _ "<td valign=TOP><table border=0 cellspacing=0 cellpadding=0 width=200>" & @CRLF & _ "<!-- Logo -->" & @CRLF & _ " <tr><td><table border=0 cellspacing=0 cellpadding=0 width=200>" & @CRLF & _ " <tr height=62>" & @CRLF & _ " <td align=LEFT><img src="/VVI-web/Ergebnisdienst/Bilder/HED-Admin.gif" width=64 height=62></td>" & @CRLF & _ " <td align=CENTER><img src="/VVI-web/Ergebnisdienst/Bilder/HED-Ergebnis.gif" width=64 height=62></td>" & @CRLF & _ " <td align=RIGHT><img src="/VVI-web/Ergebnisdienst/Bilder/HED-Spielplan.gif" width=64 height=62></td>" & @CRLF & _ " </tr>" & @CRLF & _ " </table></td></tr>" & @CRLF & _ " <tr><td><img src="/VVI-web/Include/dummy.gif" width=1 height=6></td></tr>" & @CRLF & _ "" & @CRLF & _ "<!-- Men� -->" & @CRLF & _ " <tr><td class=Oberdunkel>Men�</td></tr>" & @CRLF & _ " <tr><td><table border=0 cellspacing=0 cellpadding=4 width=200>" & @CRLF & _ " <tr><td class=bgdunkel>" & @CRLF & _ " <a href="/VVI-web/Ergebnisdienst/willkommen.asp?lokal=WHV&bereich=WHV"><b>&raquo; Info zum ...</b></a><br>" & @CRLF & _ " <b class=rot>&raquo; Wer spielt wo?</b><br>" & @CRLF & _ " <a href="/VVI-web/Ergebnisdienst/archiv.asp?lokal=WHV&bereich=WHV"><b>&raquo; Saison Archiv</b></a><br>" & @CRLF & _ " <a href="/VVI-web/Ergebnisdienst/schnittstellen.asp?lokal=WHV&bereich=WHV"><b>&raquo; Schnittstellen</b></a><br>" & @CRLF & _ " </td></tr>" & @CRLF & _ " </table></td></tr>" & @CRLF & _ " <tr><td><img src="/VVI-web/Include/dummy.gif" width=1 height=6></td></tr>" & @CRLF & _ "" & @CRLF & _ "<!-- Kontakt -->" & @CRLF & _ " <tr><td class=Oberdunkel>Kontakt</td></tr>" & @CRLF & _ " <tr><td><table border=0 cellspacing=0 cellpadding=4 width=200>" & @CRLF & _ " <tr height=40><td class=bgdunkel>" & @CRLF & _ " <a href="mailto:Webteam@hockey.de?subject=hoc@key Ergebnisdienst"><b><img src="/VVI-web/Include/Mail.gif" width=15 height=10 border=0 vspace=0 hspace=5 alt="Mail senden">Webteam hockey.de</b></a>" & @CRLF & _ " </td></tr>" & @CRLF & _ " </table></td></tr>" & @CRLF & _ " <tr><td><img src="/VVI-web/Include/dummy.gif" width=1 height=6></td></tr>" & @CRLF & _ "" & @CRLF & _ "<!-- Apps f�r den Ergebnisdienst -->" & @CRLF & _ " <tr><td>" & @CRLF & _ "<table border=0 cellspacing=0 cellpadding=0 width=200>" & @CRLF & _ " <tr><td class=OberDunkel>Apps f�r den Ergebnisdienst</td></tr>" & @CRLF & _ " <tr><td bgcolor=#FFFFFF><img src="/VVI-web/Include/dummy.gif" width=1 height=4></td></tr>" & @CRLF & _ " <tr><td align=CENTER class=bghell><a href="/VVI-web/Nachrichten/Bericht-Einzel.asp?lokal=WHV&ID=3327" title="Apps f�r den hoc@key Ergebnsidienst"><img SRC="/VVI-Web/Ergebnisdienst/Bilder/ErgebnisdienstApps2.jpg" border=0 width=200 height=200></a></td></tr>" & @CRLF & _ "</table>" & @CRLF & _ " </td></tr>" & @CRLF & _ "" & @CRLF & _ "</table></td></tr>" & @CRLF & _ "" & @CRLF & _ "<!-- Fuss -->" & @CRLF & _ "<tr><td colspan=3>" & @CRLF & _ " <table border=0 cellspacing=0 cellpadding=0 width=806>" & @CRLF & _ " <tr><td colspan=2 style="font-size:12px">&nbsp;</td></tr>" & @CRLF & _ " <tr><td colspan=2><hr class=schwarz></td></tr>" & @CRLF & _ "" & @CRLF & _ " <tr height=15>" & @CRLF & _ " <td align=LEFT style="font-size:11px; color:#666666;"><a href="/VVI-web/Impressum.asp?lokal=WHV">&raquo; Impressum</a> &nbsp; <a href="/VVI-web/datenschutz.asp?lokal=WHV">&raquo; Datenschutz</a></td>" & @CRLF & _ " <td align=RIGHT style="font-size:11px; color:#666666;">&copy; 2024 &#149; <a href="/VVI-web/Impressum.asp?lokal=WHV">hockey.de</a></td>" & @CRLF & _ " </tr>" & @CRLF & _ " <tr><td colspan=2>&nbsp;</td></tr>" & @CRLF & _ "</table>" & @CRLF & _ "" & @CRLF & _ "</td></tr>" & @CRLF & _ "" & @CRLF & _ "</TABLE>" & @CRLF & _ "</body>" & @CRLF & _ "</html>" & @CRLF & _ "" & @CRLF & _ "" Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYFULLMATCH) ; Present the entire match result _ArrayDisplay($aArray, "Result")

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm