Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
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]
  • 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
  • Match everything enclosed
    (?:...)
  • Capture everything enclosed
    (...)
  • 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

/
/
g

Test String

Substitution

Processing...

Code Generator

Generated Code

$re = '/((<svg:svg )(\w+=\"[\w\.]+\" )+)(height=\"\d+\")/'; $str = '<svg:svg version="1.1" baseProfile="full" width="771" height="221" xmlns:svg="http://www.w3.org/2000/svg"><svg:a target="basefrm" xlink:href="../Sybase.Central.transitorio/table_dboah_causal_no_genuino.htm" title="table: dbo.ah_causal_no_genuino" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="78" y="24" width="16" height="16" style="fill:#0000FF; stroke:#0000FF; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../Sybase.Central.transitorio/table_dboah_causal_no_genuino.htm" title="table: dbo.ah_causal_no_genuino" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="46" y="52">ah_causal_no_genuino</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="86" y2="32" /><svg:a target="basefrm" xlink:href="../Sybase.Central.cob_ahorros/table_dboah_cuenta.htm" title="table: dbo.ah_cuenta" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="312" y="0" width="16" height="16" style="fill:#0000FF; stroke:#0000FF; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../Sybase.Central.cob_ahorros/table_dboah_cuenta.htm" title="table: dbo.ah_cuenta" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="296" y="28">ah_cuenta</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="320" y2="8" /><svg:a target="basefrm" xlink:href="../Sybase.Central.cob_ahorros_his/table_dboah_his_movimiento.htm" title="table: dbo.ah_his_movimiento" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="545" y="24" width="16" height="16" style="fill:#0000FF; stroke:#0000FF; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../Sybase.Central.cob_ahorros_his/table_dboah_his_movimiento.htm" title="table: dbo.ah_his_movimiento" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="517" y="52">ah_his_movimiento</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="553" y2="32" /><svg:a target="basefrm" xlink:href="../Sybase.Central.cobis/table_dbocl_catalogo.htm" title="table: dbo.cl_catalogo" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="78" y="74" width="16" height="16" style="fill:#0000FF; stroke:#0000FF; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../Sybase.Central.cobis/table_dbocl_catalogo.htm" title="table: dbo.cl_catalogo" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="59" y="102">cl_catalogo</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="86" y2="82" /><svg:a target="basefrm" xlink:href="../Sybase.Central.cobis/table_dbocl_tabla.htm" title="table: dbo.cl_tabla" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="312" y="50" width="16" height="16" style="fill:#0000FF; stroke:#0000FF; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../Sybase.Central.cobis/table_dbocl_tabla.htm" title="table: dbo.cl_tabla" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="298" y="78">cl_tabla</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="320" y2="58" /><svg:a target="basefrm" xlink:href="sp_dbosp_movimientos_genuinos.htm" title="stored procedure: dbo.sp_movimientos_genuinos" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="310" y="110" width="20" height="20" style="fill:#FF0000; stroke:#FF0000; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="sp_dbosp_movimientos_genuinos.htm" title="stored procedure: dbo.sp_movimientos_genuinos" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="275" y="140">sp_movimientos_genuinos</svg:text></svg:a><svg:a target="basefrm" xlink:href="../ExternalObjects/Sqr_Jubilacionesju_devolucion.htm" title="Sqr: Jubilaciones.ju_devolucion" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="137" y="162" width="16" height="16" style="fill:#B96A9A; stroke:#B96A9A; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../ExternalObjects/Sqr_Jubilacionesju_devolucion.htm" title="Sqr: Jubilaciones.ju_devolucion" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="115" y="190">ju_devolucion</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="145" y2="170" /><svg:a target="basefrm" xlink:href="../ExternalObjects/Sqr_Jubilacionesju_rendicion_asig_fam.htm" title="Sqr: Jubilaciones.ju_rendicion_asig_fam" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:rect rx="5" ry="5" x="487" y="162" width="16" height="16" style="fill:#B96A9A; stroke:#B96A9A; stroke-width:1; fill-opacity:0.5" /></svg:a><svg:a target="basefrm" xlink:href="../ExternalObjects/Sqr_Jubilacionesju_rendicion_asig_fam.htm" title="Sqr: Jubilaciones.ju_rendicion_asig_fam" xmlns:xlink="http://www.w3.org/1999/xlink"><svg:text font-size="10" font-family="verdana" x="453" y="190">ju_rendicion_asig_fam</svg:text></svg:a><svg:line style="stroke:#808080;stroke-width:1" x1="320" y1="120" x2="495" y2="170" /></svg:svg>'; $subst = "$1height=\"xxx\""; $result = preg_replace($re, $subst, $str); echo "The result of the substitution is ".$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 PHP, please visit: http://php.net/manual/en/ref.pcre.php