Regular Expressions 101

Save & Share

  • Regex Version: ver. 25
  • Update Regex
    ctrl+⇧+s
  • Save new Regex
    ctrl+s
  • Add to Community Library

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

/
/
gis

Test String

Substitution

Processing...

Code Generator

Generated Code

#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox Local $sRegex = "(?is)(<Contract)(.*)(Contract>)" Local $sString = "<?xml version="1.0" encoding="UTF-8" standalone="yes"?>" & @CRLF & _ "<Records xmlns="http://www.datapump.cig.com">" & @CRLF & _ "<Contract phaseId="4" operation="2">" & @CRLF & _ " <General>" & @CRLF & _ " <ContractCode>8848</ContractCode>" & @CRLF & _ " <DateOfSignature>2009-09-08</DateOfSignature>" & @CRLF & _ " <CreditPurpose id="20"/>" & @CRLF & _ " <NegativeStatus id="4"/>" & @CRLF & _ " <ApplicationDate>2009-09-08</ApplicationDate>" & @CRLF & _ " <StartDate>2009-09-08</StartDate>" & @CRLF & _ " <ExpectedEndDate>2011-03-31</ExpectedEndDate>" & @CRLF & _ " <Subjects>" & @CRLF & _ " <Subject roleId="1">" & @CRLF & _ " <Entity>" & @CRLF & _ " <Individual gender="1">" & @CRLF & _ " <FirstName>" & @CRLF & _ "<Text language="uk-UA">украинский</Text>" & @CRLF & _ " </FirstName>" & @CRLF & _ " <Surname>" & @CRLF & _ "<Text language="uk-UA">Первый</Text>" & @CRLF & _ " </Surname>" & @CRLF & _ " <FathersName>" & @CRLF & _ "<Text language="uk-UA">контрагент</Text>" & @CRLF & _ " </FathersName>" & @CRLF & _ " <Classification id="1"/>" & @CRLF & _ " <DateOfBirth>1980-12-06</DateOfBirth>" & @CRLF & _ " <Residency id="1"/>" & @CRLF & _ " <Citizenship code="UA"/>" & @CRLF & _ " <MaritalStatus id="2"/>" & @CRLF & _ " <Identifications>" & @CRLF & _ "<Identification typeId="2">" & @CRLF & _ "<Number>2554209876</Number>" & @CRLF & _ "</Identification>" & @CRLF & _ "<Identification typeId="4">" & @CRLF & _ "<Number>ВЦ620997</Number>" & @CRLF & _ "<IssueDate>1997-04-01</IssueDate>" & @CRLF & _ "<Authority language="uk-UA">Дебальцевский ГОУМВД Украины в Донецкой области</Authority>" & @CRLF & _ "</Identification>" & @CRLF & _ "<Identification typeId="1">" & @CRLF & _ " <Number>2554209876</Number>" & @CRLF & _ "</Identification>" & @CRLF & _ " </Identifications>" & @CRLF & _ " <Addresses>" & @CRLF & _ "<Address typeId="2">" & @CRLF & _ "<Street>" & @CRLF & _ " <Text language="uk-UA">м. Kharkov, вул. Street, буд. 1, кв. 1</Text>" & @CRLF & _ "</Street>" & @CRLF & _ "</Address>" & @CRLF & _ " </Addresses>" & @CRLF & _ " </Individual>" & @CRLF & _ " </Entity>" & @CRLF & _ " </Subject>" & @CRLF & _ " </Subjects>" & @CRLF & _ " </General>" & @CRLF & _ " <Type>" & @CRLF & _ " <Credit paymentPeriodId="9" paymentMethodId="6">" & @CRLF & _ " <CreditLimit currency="USD">7800.0</CreditLimit>" & @CRLF & _ " <Records>" & @CRLF & _ " <Record accountingDate="2011-04-20">" & @CRLF & _ " <CreditUsage id="3"/>" & @CRLF & _ " <ResidualAmount currency="USD">7800.0</ResidualAmount>" & @CRLF & _ " <OverdueAmount currency="USD">0.0</OverdueAmount>" & @CRLF & _ " </Record>" & @CRLF & _ " </Records>" & @CRLF & _ " </Credit>" & @CRLF & _ " </Type>" & @CRLF & _ "</Contract>" Local $sSubst = "" Local $sResult = StringRegExpReplace($sString, $sRegex, $sSubst) MsgBox($MB_SYSTEMMODAL, "Result", $sResult)

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