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
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]
  • 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

/
/
g

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 = "(\s|\S){0,40}\"([0-9]{1,3})\"\;\}" Local $sString = "a:1:{s:2:"gr";s:3:"214";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"188";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"213";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"169";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"219";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"221";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"211";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"184";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"191";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"16";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"127";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"217";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"200";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"182";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"128";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"17";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"163";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"212";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"166";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"94";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"83";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"27";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"28";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"167";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"168";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"202";}" & @CRLF & _ "a:1:{s:2:"gr";s:1:"7";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"129";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"183";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"26";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"185";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"175";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"29";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"209";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"177";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"178";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"24";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"225";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"224";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"57";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"18";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"208";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"193";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"33";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"10";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"11";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"12";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"173";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"13";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"14";}" & @CRLF & _ "a:1:{s:2:"gr";s:1:"9";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"15";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"195";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"130";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"25";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"50";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"131";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"96";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"19";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"107";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"116";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"364";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"194";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"44";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"171";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"172";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"170";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"20";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"95";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"84";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"22";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"23";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"67";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"118";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"97";}" & @CRLF & _ "a:1:{s:2:"gr";s:1:"6";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"365";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"190";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"82";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"42";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"74";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"76";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"73";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"78";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"68";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"207";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"197";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"77";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"46";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"51";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"206";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"165";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"60";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"61";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"62";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"187";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"176";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"196";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"223";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"117";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"98";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"47";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"198";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"45";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"203";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"205";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"201";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"115";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"58";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"204";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"132";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"48";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"49";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"99";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"594";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"585";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"368";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"81";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"53";}" & @CRLF & _ "a:1:{s:2:"gr";s:2:"52";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"180";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"181";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"179";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"164";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"186";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"174";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"199";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"210";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"369";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"370";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"371";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"372";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"373";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"374";}" & @CRLF & _ "a:1:{s:2:"gr";s:3:"375";}" Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYGLOBALFULLMATCH) Local $aFullArray[0] For $i = 0 To UBound($aArray) -1 _ArrayConcatenate($aFullArray, $aArray[$i]) Next $aArray = $aFullArray ; 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