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

/
/
gm

Test String

Code Generator

Generated Code

using System; using System.Text.RegularExpressions; public class Example { public static void Main() { string pattern = @"(PI~)([0-9]*)"; string input = @" MSH|^~\&|EPIC|UMCG|||20180927143440||ADR^A19|18093|P|2.4||||||||||| MSA|CA|20180927023440|| QRD|20180927|R|I|20180927|||1^RD|1414141|DEM EVN|A19|20180927143440|||^^^^^^^^^^^^^|| PID|1||1414141^^^UMCG^PI~109819226||PROEFPERSOON&&PROEFPERSOON^J^X Y Z^^^^L^^^^NL1~PROEFPERSOON&&PROEFPERSOON^PIET^^^^^N^^^^NL1||19700101|M|PROEFPERSOON^PIET^^||PROEFLAAN 1C&PROEFLAAN&1C^^GRONINGEN^^9713GZ^NLD^L||050-1234567^P^PH^^^050^1234567~^NET^Internet^PIET@PROEFPERSOON.com~06-12345678^P^CP^^^06^12345678|06-87654321^P^PH^^^06^87654321|NEDERLANDS|||19764||||||Y||||||N|| ROL|1|UP|PP^Primary Care Provider|01001234^Huisarts^H^^^^^^Vektis^L|||||01^Huisartsen^Vektis||Straatweg 2&Straatweg&2^^Groningen^^9723AA^^O|050-3134102^WPN^PH~^NET^X.400^800013630 PV1|1|I|UG_V_A1VA^4^4-1^10^^^^^UMCG A1VA^^DEPID|NB||||||||||WOON|||||19764|CZ||||||||||||||||||||||||20180926143019||||||99996|||| AL1|1|SYSTEMISCH|^GEEN BEKENDE ALLERGIEEN^|||||| IN1|1||7119^^^UZOVI^PAYORID|CZ GROEP ZORGVERZEKERAAR UA (7119)|POSTBUS 4400&POSTBUS 4400&^^GOES^^4460CZ^||0113-274727^^^^^0113^274727|||||||||PROEFPERSOON^J^X Y Z.^^|Zelf|||Accepteren||1|||Ja||||||||||2552|ABC0123|||||||||||BEIDE|| IN2|||||Verzekeraar||||||||||||||||||||||||||||||||||||||||||||||||||||||||ABC0123||||||||| L|1|UP|PP^Primary Care Provider|01001234^Huisarts^H^^^^^^Vektis^L|||||01^Huisartsen^Vektis||Straatweg 2&Straatweg&2^^Groningen^^9723AA^^O|050-3134102^WPN^PH~^NET^X.400^800013630 "; RegexOptions options = RegexOptions.Multiline; foreach (Match m in Regex.Matches(input, pattern, options)) { Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index); } } }

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 C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx