Regular Expressions 101

Save & Share

  • Regex Version: ver. 60
  • 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

/
/
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 = "(?P<datetime>\d{2}\/\d{2}\/\d{4},\s\d(?:\d)?:\d{2} [pa].m.)\s-\s(?P<name>[^:]*):(?P<message>.*)" Local $sString = "15/11/2017, 10:59 p.m. - β€ͺSome random name‬: Thats sounds like crow who don't know marathi🀣" & @CRLF & _ "15/11/2017, 11:00 p.m. - Pratik: πŸ˜‚πŸ˜‚" & @CRLF & _ "15/11/2017, 11:00 p.m. - Dhiraj Kadam: Msging language bruhπŸ˜‚πŸ˜‚πŸ˜‚" & @CRLF & _ "15/11/2017, 11:00 p.m. - Rushiraj Msc: πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚" & @CRLF & _ "15/11/2017, 11:00 p.m. - Shreyas : πŸ’©πŸ’©πŸ’©" & @CRLF & _ "15/11/2017, 11:01 p.m. - Abhisek Joshi: πŸ˜‚πŸ˜‚" & @CRLF & _ "15/11/2017, 11:01 p.m. - β€ͺSome Name: Age piche ke students 2 ... 2 subject padho and copy.. nahi ata to thoko bhindhass" & @CRLF & _ "15/11/2017, 11:01 p.m. - Shreyas : πŸ™ŒπŸΌπŸ™ŒπŸΌπŸ™ŒπŸΌπŸ™ŒπŸΌπŸ’―" & @CRLF & _ "15/11/2017, 11:02 p.m. - β€ͺSome name: Respect the term autonomous" & @CRLF & _ "15/11/2017, 11:02 p.m. - β€ͺSome Name : Gharguti ...πŸ˜…" & @CRLF & _ "14/11/2017, 9:54 a.m. - Abhisek Josh: πŸ˜‚πŸ˜‚πŸ˜‚" & @CRLF & _ "14/11/2017, 10:37 a.m. - β€ͺSOme Name: Do you still remember those awkward days in schools during Exams ?" & @CRLF & _ "" & @CRLF & _ "When a bright student tells the invigilator that question 4 has a problem, but you have already answered it...😳😜" & @CRLF & _ "" & @CRLF & _ "When a fellow student asks for a graph paper, but you are finished and did not see anywhere where it was required...😧 😁😁" & @CRLF & _ "" & @CRLF & _ "When the invigilator says jump question 6 we will rectify it later, but it was the question you enjoyed most when answering...😟 😱😲" & @CRLF & _ "" & @CRLF & _ "When you see people busy using rulers and you are wondering what is going on...😣😫😫" & @CRLF & _ "" & @CRLF & _ "When you hear your friends arguing after the exam whether the answer to question 5 was 35.5% or 36.5% and your answer was 1800 😩😏" & @CRLF & _ "" & @CRLF & _ "The cream. When the other students asked for 4-5 additional answer sheets and You had two pages empty in the main answer sheet😨😰😱" & @CRLF & _ "" & @CRLF & _ "See where you have reached in life inspite of those moments...things are not permanent...enjoy life! πŸ˜ƒπŸ˜ƒ" & @CRLF & _ "" & @CRLF & _ "Only for those who enjoyed their school lifeπŸ˜‚πŸ˜‚πŸ˜‚" & @CRLF & _ "" & @CRLF & _ "Top 10 Dialogue of teacher" & @CRLF & _ "πŸ‘‰ If you are not interested then you may leave the class." & @CRLF & _ "πŸ‘‰ This class is worse than a fish market." & @CRLF & _ "πŸ‘‰ Are you here to waste your parents money? " & @CRLF & _ "πŸ‘‰ Tell me when you all have finished talking." & @CRLF & _ "πŸ‘‰ Why are u laughing? Come here n tell us we'll also laugh. " & @CRLF & _ "πŸ‘‰ Do you think teachers are fools to teach you?" & @CRLF & _ "πŸ‘‰ Don't try to act oversmart with me." & @CRLF & _ "πŸ‘‰ Why do u come to school when you don't want to study." & @CRLF & _ "πŸ‘‰ The previous batch was 100 times better than yours." & @CRLF & _ "πŸ‘‰ If you want to talk then u may get out from the class." & @CRLF & _ "" & @CRLF & _ "And the best one" & @CRLF & _ "πŸ‘‰ You yes you... I am talking to you only, don't look back.. πŸ˜„πŸ˜„" & @CRLF & _ "." & @CRLF & _ "." & @CRLF & _ "." & @CRLF & _ "I'm sure that the last line made all of you remember and smile ." & @CRLF & _ "14/11/2017, 10:42 a.m. - β€ͺName‬: πŸ‘πŸ‘πŸ‘" & @CRLF & _ "14/11/2017, 11:15 a.m. - Sanesh Sagvekar: Whos in clg now" & @CRLF & _ "14/11/2017, 11:15 a.m. - Sanesh Sagvekar: πŸ˜„πŸ˜„πŸ˜„πŸ‘ŒπŸΌπŸ‘ŒπŸΌπŸ‘ŒπŸΌ" 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