Regular Expressions 101

Save & Share

  • Regex Version: ver. 1
  • 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
No Match

/
/
gm

Test String

Substitution

Processing...

Code Generator

Generated Code

#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox Local $sRegex = "(?m)^(?:A(?:C(?:WS|[DS])?T|DT|E[DS]?T|FT|K[DS]T|LMT|M[S]?T|NAS?T|QTT|RT|ST|W[DS]T|Z(?:OS|[OS])?T|oE|T)|B(?:RS|[NORST])T|C(?:AS|ES|H(?:A[DS]|OS|[OU])|ID?S|LS|hS|[ACDEKLOSVX])?T|D(?:AV|DU)T|E(?:ASS?|ES|GS|[ACDEGS])?T|F(?:JS|KS|[EJKN])T|G(?:A[LM]|IL|[EFMSY])T|H(?:OVS?|[DKS])T|I(?:R(?:KS|[DKS])|[CDOS])T|JST|K(?:OS|RAS?|UY|[GS])T|L(?:H[DS]|IN)T|M(?:A(?:GS|[GRW])T|DT|HT|MT|S[DKT]|UT|VT|YT|T)|N(?:FD|OVS?|Z[DS]|[CDFPRSU])T|O(?:MSS?|RA)T|P(?:ETS?|HO|M[DS]|ON|YS|[DEGHKSWY])?T|QYZT|R(?:OT|E)T|S(?:A[KMS]|RE|YO|[BCGRS])T|T(?:AH|OS|[FJKLMORV])T|U(?:LAS?T|TC|YS?T|ZT)|V(?:LAS?|OS|[EU])T|W(?:A(?:RS|[KS])?T|ES?T|FT|GS?T|I(?:TA|[BT])|ST|T)|Y(?:A(?:KS|[KP])|EKS?)T|[ABCDEFGHIKLMNOPQRSTUVWXYZ])$" Local $sString = "A" & @CRLF & _ "ACDT" & @CRLF & _ "ACST" & @CRLF & _ "ACT" & @CRLF & _ "ACT" & @CRLF & _ "ACWST" & @CRLF & _ "ADT" & @CRLF & _ "ADT" & @CRLF & _ "AEDT" & @CRLF & _ "AEST" & @CRLF & _ "AET" & @CRLF & _ "AFT" & @CRLF & _ "AKDT" & @CRLF & _ "AKST" & @CRLF & _ "ALMT" & @CRLF & _ "AMST" & @CRLF & _ "AMST" & @CRLF & _ "AMT" & @CRLF & _ "AMT" & @CRLF & _ "ANAST" & @CRLF & _ "ANAT" & @CRLF & _ "AQTT" & @CRLF & _ "ART" & @CRLF & _ "AST" & @CRLF & _ "AST" & @CRLF & _ "AT" & @CRLF & _ "AWDT" & @CRLF & _ "AWST" & @CRLF & _ "AZOST" & @CRLF & _ "AZOT" & @CRLF & _ "AZST" & @CRLF & _ "AZT" & @CRLF & _ "AoE" & @CRLF & _ "B" & @CRLF & _ "BNT" & @CRLF & _ "BOT" & @CRLF & _ "BRST" & @CRLF & _ "BRT" & @CRLF & _ "BST" & @CRLF & _ "BST" & @CRLF & _ "BST" & @CRLF & _ "BTT" & @CRLF & _ "C" & @CRLF & _ "CAST" & @CRLF & _ "CAT" & @CRLF & _ "CCT" & @CRLF & _ "CDT" & @CRLF & _ "CDT" & @CRLF & _ "CEST" & @CRLF & _ "CET" & @CRLF & _ "CHADT" & @CRLF & _ "CHAST" & @CRLF & _ "CHOST" & @CRLF & _ "CHOT" & @CRLF & _ "CHUT" & @CRLF & _ "CIDST" & @CRLF & _ "CIST" & @CRLF & _ "CKT" & @CRLF & _ "CLST" & @CRLF & _ "CLT" & @CRLF & _ "COT" & @CRLF & _ "CST" & @CRLF & _ "CST" & @CRLF & _ "CST" & @CRLF & _ "CT" & @CRLF & _ "CVT" & @CRLF & _ "CXT" & @CRLF & _ "ChST" & @CRLF & _ "D" & @CRLF & _ "DAVT" & @CRLF & _ "DDUT" & @CRLF & _ "E" & @CRLF & _ "EASST" & @CRLF & _ "EAST" & @CRLF & _ "EAT" & @CRLF & _ "ECT" & @CRLF & _ "EDT" & @CRLF & _ "EEST" & @CRLF & _ "EET" & @CRLF & _ "EGST" & @CRLF & _ "EGT" & @CRLF & _ "EST" & @CRLF & _ "ET" & @CRLF & _ "F" & @CRLF & _ "FET" & @CRLF & _ "FJST" & @CRLF & _ "FJT" & @CRLF & _ "FKST" & @CRLF & _ "FKT" & @CRLF & _ "FNT" & @CRLF & _ "G" & @CRLF & _ "GALT" & @CRLF & _ "GAMT" & @CRLF & _ "GET" & @CRLF & _ "GFT" & @CRLF & _ "GILT" & @CRLF & _ "GMT" & @CRLF & _ "GST" & @CRLF & _ "GST" & @CRLF & _ "GYT" & @CRLF & _ "H" & @CRLF & _ "HDT" & @CRLF & _ "HKT" & @CRLF & _ "HOVST" & @CRLF & _ "HOVT" & @CRLF & _ "HST" & @CRLF & _ "I" & @CRLF & _ "ICT" & @CRLF & _ "IDT" & @CRLF & _ "IOT" & @CRLF & _ "IRDT" & @CRLF & _ "IRKST" & @CRLF & _ "IRKT" & @CRLF & _ "IRST" & @CRLF & _ "IST" & @CRLF & _ "IST" & @CRLF & _ "IST" & @CRLF & _ "JST" & @CRLF & _ "K" & @CRLF & _ "KGT" & @CRLF & _ "KOST" & @CRLF & _ "KRAST" & @CRLF & _ "KRAT" & @CRLF & _ "KST" & @CRLF & _ "KUYT" & @CRLF & _ "L" & @CRLF & _ "LHDT" & @CRLF & _ "LHST" & @CRLF & _ "LINT" & @CRLF & _ "M" & @CRLF & _ "MAGST" & @CRLF & _ "MAGT" & @CRLF & _ "MART" & @CRLF & _ "MAWT" & @CRLF & _ "MDT" & @CRLF & _ "MHT" & @CRLF & _ "MMT" & @CRLF & _ "MSD" & @CRLF & _ "MSK" & @CRLF & _ "MST" & @CRLF & _ "MT" & @CRLF & _ "MUT" & @CRLF & _ "MVT" & @CRLF & _ "MYT" & @CRLF & _ "N" & @CRLF & _ "NCT" & @CRLF & _ "NDT" & @CRLF & _ "NFDT" & @CRLF & _ "NFT" & @CRLF & _ "NOVST" & @CRLF & _ "NOVT" & @CRLF & _ "NPT" & @CRLF & _ "NRT" & @CRLF & _ "NST" & @CRLF & _ "NUT" & @CRLF & _ "NZDT" & @CRLF & _ "NZST" & @CRLF & _ "O" & @CRLF & _ "OMSST" & @CRLF & _ "OMST" & @CRLF & _ "ORAT" & @CRLF & _ "P" & @CRLF & _ "PDT" & @CRLF & _ "PET" & @CRLF & _ "PETST" & @CRLF & _ "PETT" & @CRLF & _ "PGT" & @CRLF & _ "PHOT" & @CRLF & _ "PHT" & @CRLF & _ "PKT" & @CRLF & _ "PMDT" & @CRLF & _ "PMST" & @CRLF & _ "PONT" & @CRLF & _ "PST" & @CRLF & _ "PST" & @CRLF & _ "PT" & @CRLF & _ "PWT" & @CRLF & _ "PYST" & @CRLF & _ "PYT" & @CRLF & _ "PYT" & @CRLF & _ "Q" & @CRLF & _ "QYZT" & @CRLF & _ "R" & @CRLF & _ "RET" & @CRLF & _ "ROTT" & @CRLF & _ "S" & @CRLF & _ "SAKT" & @CRLF & _ "SAMT" & @CRLF & _ "SAST" & @CRLF & _ "SBT" & @CRLF & _ "SCT" & @CRLF & _ "SGT" & @CRLF & _ "SRET" & @CRLF & _ "SRT" & @CRLF & _ "SST" & @CRLF & _ "SYOT" & @CRLF & _ "T" & @CRLF & _ "TAHT" & @CRLF & _ "TFT" & @CRLF & _ "TJT" & @CRLF & _ "TKT" & @CRLF & _ "TLT" & @CRLF & _ "TMT" & @CRLF & _ "TOST" & @CRLF & _ "TOT" & @CRLF & _ "TRT" & @CRLF & _ "TVT" & @CRLF & _ "U" & @CRLF & _ "ULAST" & @CRLF & _ "ULAT" & @CRLF & _ "UTC" & @CRLF & _ "UYST" & @CRLF & _ "UYT" & @CRLF & _ "UZT" & @CRLF & _ "V" & @CRLF & _ "VET" & @CRLF & _ "VLAST" & @CRLF & _ "VLAT" & @CRLF & _ "VOST" & @CRLF & _ "VUT" & @CRLF & _ "W" & @CRLF & _ "WAKT" & @CRLF & _ "WARST" & @CRLF & _ "WAST" & @CRLF & _ "WAT" & @CRLF & _ "WEST" & @CRLF & _ "WET" & @CRLF & _ "WFT" & @CRLF & _ "WGST" & @CRLF & _ "WGT" & @CRLF & _ "WIB" & @CRLF & _ "WIT" & @CRLF & _ "WITA" & @CRLF & _ "WST" & @CRLF & _ "WST" & @CRLF & _ "WT" & @CRLF & _ "X" & @CRLF & _ "Y" & @CRLF & _ "YAKST" & @CRLF & _ "YAKT" & @CRLF & _ "YAPT" & @CRLF & _ "YEKST" & @CRLF & _ "YEKT" & @CRLF & _ "Z" Local $sSubst = "$1" 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