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

/
/

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 = "\d" Local $sString = "The rundown" & @CRLF & _ "The modern monitoring stack is increasingly diverse and complex. " & @CRLF & _ "Represented among the top 10 most popular tools are solutions for systems monitoring, APM, web and user monitoring, and log management." & @CRLF & _ "The top five monitoring challenges:" & @CRLF & _ "1) Quickly remediating service disruptions" & @CRLF & _ "2) Reducing alert noise" & @CRLF & _ "3) Securing budget for the proper tools" & @CRLF & _ "4) Quickly identifying service disruptions" & @CRLF & _ "5) Migrating services to the cloud" & @CRLF & _ "IT teams are feeling alert pain more than ever before." & @CRLF & _ "Almost half of those surveyed receive over 50 alerts per day from their tools, and about a quarter receive more than 100." & @CRLF & _ "Alert floods have a clear and substantial effect on remediation. " & @CRLF & _ "Of those who receive 100+ alerts per day, only 17% are able to investigate and remediate the majority (75-100%) within 24 hours." & @CRLF & _ "Strategic monitoring is clearly important, but execution is lacking." & @CRLF & _ "80% agree that strategic monitoring is important to their organization, but only 12% are very satisfied." & @CRLF & _ "A good monitoring strategy goes a long way." & @CRLF & _ "Respondents who are satisfied with their organization’s monitoring strategy find critical IT issues much easier to handle and report the best rates of remediation. In addition, organizations with a defined monitoring process are better equipped to respond to alerts." & @CRLF & _ "IT performance is increasingly tied to business performance." & @CRLF & _ "Customer satisfaction and SLA compliance take the lead as the most common KPIs to measure IT performance, outranking “traditional” metrics, such as MTTR and incident volume." & @CRLF & _ "Good news for budgets, but not for ROI." & @CRLF & _ "Only 16% anticipate a decrease to their overall IT budget in 2016, while a third expect it to increase. However, a dismal 9% agreed that they were very satisfied with their organization’s monitoring strategy, based on overall investment" & @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