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

/
/
gm

Test String

Code Generator

Generated Code

const regex = /(?<field100>[^\|]+)\|(?<field101>[^\|]+)\|(?<field102>[^\|]+)\|(?<field103>[^\|]+)\|(?<field104>[^\|]+)\|(?<field105>[^\|]+)\|(?<field106>[^\|]+)\|(?<field107>[^\|]+)\|(?<field108>[^\|]+)\|(?<field109>[^\|]+)\|(?<field10>[^\|]+)\|(?<field110>[^\|]+)\|(?<field111>[^\|]+)\|(?<field112>[^\|]+)\|(?<field113>[^\|]+)\|(?<field114>[^\|]+)\|(?<field115>[^\|]+)\|(?<field116>[^\|]+)\|(?<field117>[^\|]+)\|(?<field118>[^\|]+)\|(?<field119>[^\|]+)\|(?<field11>[^\|]+)\|(?<field120>[^\|]+)\|(?<field121>[^\|]+)\|(?<field122>[^\|]+)\|(?<field123>[^\|]+)\|(?<field124>[^\|]+)\|(?<field125>[^\|]+)\|(?<field126>[^\|]+)\|(?<field127>[^\|]+)\|(?<field128>[^\|]+)\|(?<field129>[^\|]+)\|(?<field12>[^\|]+)\|(?<field130>[^\|]+)\|(?<field131>[^\|]+)\|(?<field132>[^\|]+)\|(?<field133>[^\|]+)\|(?<field134>[^\|]+)\|(?<field135>[^\|]+)\|(?<field136>[^\|]+)\|(?<field137>[^\|]+)\|(?<field138>[^\|]+)\|(?<field139>[^\|]+)\|(?<field13>[^\|]+)\|(?<field140>[^\|]+)\|(?<field141>[^\|]+)\|(?<field142>[^\|]+)\|(?<field143>[^\|]+)\|(?<field144>[^\|]+)\|(?<field145>[^\|]+)\|(?<field146>[^\|]+)\|(?<field147>[^\|]+)\|(?<field148>[^\|]+)\|(?<field149>[^\|]+)\|(?<field14>[^\|]+)\|(?<field150>[^\|]+)\|(?<field151>[^\|]+)\|(?<field152>[^\|]+)\|(?<field153>[^\|]+)\|(?<field154>[^\|]+)\|(?<field155>[^\|]+)\|(?<field156>[^\|]+)\|(?<field157>[^\|]+)\|(?<field158>[^\|]+)\|(?<field159>[^\|]+)\|(?<field15>[^\|]+)\|(?<field160>[^\|]+)\|(?<field161>[^\|]+)\|(?<field162>[^\|]+)\|(?<field163>[^\|]+)\|(?<field164>[^\|]+)\|(?<field165>[^\|]+)\|(?<field166>[^\|]+)\|(?<field167>[^\|]+)\|(?<field168>[^\|]+)\|(?<field169>[^\|]+)\|(?<field16>[^\|]+)\|(?<field170>[^\|]+)\|(?<field171>[^\|]+)\|(?<field172>[^\|]+)\|(?<field173>[^\|]+)\|(?<field174>[^\|]+)\|(?<field175>[^\|]+)\|(?<field176>[^\|]+)\|(?<field177>[^\|]+)\|(?<field178>[^\|]+)\|(?<field179>[^\|]+)\|(?<field17>[^\|]+)\|(?<field180>[^\|]+)\|(?<field18>[^\|]+)\|(?<field19>[^\|]+)\|(?<field1>[^\|]+)\|(?<field20>[^\|]+)\|(?<field21>[^\|]+)\|(?<field22>[^\|]+)\|(?<field23>[^\|]+)\|(?<field24>[^\|]+)\|(?<field25>[^\|]+)\|(?<field26>[^\|]+)\|(?<field27>[^\|]+)\|(?<field28>[^\|]+)\|(?<field29>[^\|]+)\|(?<field2>[^\|]+)\|(?<field30>[^\|]+)\|(?<field31>[^\|]+)\|(?<field32>[^\|]+)\|(?<field33>[^\|]+)\|(?<field34>[^\|]+)\|(?<field35>[^\|]+)\|(?<field36>[^\|]+)\|(?<field37>[^\|]+)\|(?<field38>[^\|]+)\|(?<field39>[^\|]+)\|(?<field3>[^\|]+)\|(?<field40>[^\|]+)\|(?<field41>[^\|]+)\|(?<field42>[^\|]+)\|(?<field43>[^\|]+)\|(?<field44>[^\|]+)\|(?<field45>[^\|]+)\|(?<field46>[^\|]+)\|(?<field47>[^\|]+)\|(?<field48>[^\|]+)\|(?<field49>[^\|]+)\|(?<field4>[^\|]+)\|(?<field50>[^\|]+)\|(?<field51>[^\|]+)\|(?<field52>[^\|]+)\|(?<field53>[^\|]+)\|(?<field54>[^\|]+)\|(?<field55>[^\|]+)\|(?<field56>[^\|]+)\|(?<field57>[^\|]+)\|(?<field58>[^\|]+)\|(?<field59>[^\|]+)\|(?<field5>[^\|]+)\|(?<field60>[^\|]+)\|(?<field61>[^\|]+)\|(?<field62>[^\|]+)\|(?<field63>[^\|]+)\|(?<field64>[^\|]+)\|(?<field65>[^\|]+)\|(?<field66>[^\|]+)\|(?<field67>[^\|]+)\|(?<field68>[^\|]+)\|(?<field69>[^\|]+)\|(?<field6>[^\|]+)\|(?<field70>[^\|]+)\|(?<field71>[^\|]+)\|(?<field72>[^\|]+)\|(?<field73>[^\|]+)\|(?<field74>[^\|]+)\|(?<field75>[^\|]+)\|(?<field76>[^\|]+)\|(?<field77>[^\|]+)\|(?<field78>[^\|]+)\|(?<field79>[^\|]+)\|(?<field7>[^\|]+)\|(?<field80>[^\|]+)\|(?<field81>[^\|]+)\|(?<field82>[^\|]+)\|(?<field83>[^\|]+)\|(?<field84>[^\|]+)\|(?<field85>[^\|]+)\|(?<field86>[^\|]+)\|(?<field87>[^\|]+)\|(?<field88>[^\|]+)\|(?<field89>[^\|]+)\|(?<field8>[^\|]+)\|(?<field90>[^\|]+)\|(?<field91>[^\|]+)\|(?<field92>[^\|]+)\|(?<field93>[^\|]+)\|(?<field94>[^\|]+)\|(?<field95>[^\|]+)\|(?<field96>[^\|]+)\|(?<field97>[^\|]+)\|(?<field98>[^\|]+)\|(?<field99>[^\|]+)\|(?<field9>[^\|]+)$/gm; // Alternative syntax using RegExp constructor // const regex = new RegExp('(?<field100>[^\\|]+)\\|(?<field101>[^\\|]+)\\|(?<field102>[^\\|]+)\\|(?<field103>[^\\|]+)\\|(?<field104>[^\\|]+)\\|(?<field105>[^\\|]+)\\|(?<field106>[^\\|]+)\\|(?<field107>[^\\|]+)\\|(?<field108>[^\\|]+)\\|(?<field109>[^\\|]+)\\|(?<field10>[^\\|]+)\\|(?<field110>[^\\|]+)\\|(?<field111>[^\\|]+)\\|(?<field112>[^\\|]+)\\|(?<field113>[^\\|]+)\\|(?<field114>[^\\|]+)\\|(?<field115>[^\\|]+)\\|(?<field116>[^\\|]+)\\|(?<field117>[^\\|]+)\\|(?<field118>[^\\|]+)\\|(?<field119>[^\\|]+)\\|(?<field11>[^\\|]+)\\|(?<field120>[^\\|]+)\\|(?<field121>[^\\|]+)\\|(?<field122>[^\\|]+)\\|(?<field123>[^\\|]+)\\|(?<field124>[^\\|]+)\\|(?<field125>[^\\|]+)\\|(?<field126>[^\\|]+)\\|(?<field127>[^\\|]+)\\|(?<field128>[^\\|]+)\\|(?<field129>[^\\|]+)\\|(?<field12>[^\\|]+)\\|(?<field130>[^\\|]+)\\|(?<field131>[^\\|]+)\\|(?<field132>[^\\|]+)\\|(?<field133>[^\\|]+)\\|(?<field134>[^\\|]+)\\|(?<field135>[^\\|]+)\\|(?<field136>[^\\|]+)\\|(?<field137>[^\\|]+)\\|(?<field138>[^\\|]+)\\|(?<field139>[^\\|]+)\\|(?<field13>[^\\|]+)\\|(?<field140>[^\\|]+)\\|(?<field141>[^\\|]+)\\|(?<field142>[^\\|]+)\\|(?<field143>[^\\|]+)\\|(?<field144>[^\\|]+)\\|(?<field145>[^\\|]+)\\|(?<field146>[^\\|]+)\\|(?<field147>[^\\|]+)\\|(?<field148>[^\\|]+)\\|(?<field149>[^\\|]+)\\|(?<field14>[^\\|]+)\\|(?<field150>[^\\|]+)\\|(?<field151>[^\\|]+)\\|(?<field152>[^\\|]+)\\|(?<field153>[^\\|]+)\\|(?<field154>[^\\|]+)\\|(?<field155>[^\\|]+)\\|(?<field156>[^\\|]+)\\|(?<field157>[^\\|]+)\\|(?<field158>[^\\|]+)\\|(?<field159>[^\\|]+)\\|(?<field15>[^\\|]+)\\|(?<field160>[^\\|]+)\\|(?<field161>[^\\|]+)\\|(?<field162>[^\\|]+)\\|(?<field163>[^\\|]+)\\|(?<field164>[^\\|]+)\\|(?<field165>[^\\|]+)\\|(?<field166>[^\\|]+)\\|(?<field167>[^\\|]+)\\|(?<field168>[^\\|]+)\\|(?<field169>[^\\|]+)\\|(?<field16>[^\\|]+)\\|(?<field170>[^\\|]+)\\|(?<field171>[^\\|]+)\\|(?<field172>[^\\|]+)\\|(?<field173>[^\\|]+)\\|(?<field174>[^\\|]+)\\|(?<field175>[^\\|]+)\\|(?<field176>[^\\|]+)\\|(?<field177>[^\\|]+)\\|(?<field178>[^\\|]+)\\|(?<field179>[^\\|]+)\\|(?<field17>[^\\|]+)\\|(?<field180>[^\\|]+)\\|(?<field18>[^\\|]+)\\|(?<field19>[^\\|]+)\\|(?<field1>[^\\|]+)\\|(?<field20>[^\\|]+)\\|(?<field21>[^\\|]+)\\|(?<field22>[^\\|]+)\\|(?<field23>[^\\|]+)\\|(?<field24>[^\\|]+)\\|(?<field25>[^\\|]+)\\|(?<field26>[^\\|]+)\\|(?<field27>[^\\|]+)\\|(?<field28>[^\\|]+)\\|(?<field29>[^\\|]+)\\|(?<field2>[^\\|]+)\\|(?<field30>[^\\|]+)\\|(?<field31>[^\\|]+)\\|(?<field32>[^\\|]+)\\|(?<field33>[^\\|]+)\\|(?<field34>[^\\|]+)\\|(?<field35>[^\\|]+)\\|(?<field36>[^\\|]+)\\|(?<field37>[^\\|]+)\\|(?<field38>[^\\|]+)\\|(?<field39>[^\\|]+)\\|(?<field3>[^\\|]+)\\|(?<field40>[^\\|]+)\\|(?<field41>[^\\|]+)\\|(?<field42>[^\\|]+)\\|(?<field43>[^\\|]+)\\|(?<field44>[^\\|]+)\\|(?<field45>[^\\|]+)\\|(?<field46>[^\\|]+)\\|(?<field47>[^\\|]+)\\|(?<field48>[^\\|]+)\\|(?<field49>[^\\|]+)\\|(?<field4>[^\\|]+)\\|(?<field50>[^\\|]+)\\|(?<field51>[^\\|]+)\\|(?<field52>[^\\|]+)\\|(?<field53>[^\\|]+)\\|(?<field54>[^\\|]+)\\|(?<field55>[^\\|]+)\\|(?<field56>[^\\|]+)\\|(?<field57>[^\\|]+)\\|(?<field58>[^\\|]+)\\|(?<field59>[^\\|]+)\\|(?<field5>[^\\|]+)\\|(?<field60>[^\\|]+)\\|(?<field61>[^\\|]+)\\|(?<field62>[^\\|]+)\\|(?<field63>[^\\|]+)\\|(?<field64>[^\\|]+)\\|(?<field65>[^\\|]+)\\|(?<field66>[^\\|]+)\\|(?<field67>[^\\|]+)\\|(?<field68>[^\\|]+)\\|(?<field69>[^\\|]+)\\|(?<field6>[^\\|]+)\\|(?<field70>[^\\|]+)\\|(?<field71>[^\\|]+)\\|(?<field72>[^\\|]+)\\|(?<field73>[^\\|]+)\\|(?<field74>[^\\|]+)\\|(?<field75>[^\\|]+)\\|(?<field76>[^\\|]+)\\|(?<field77>[^\\|]+)\\|(?<field78>[^\\|]+)\\|(?<field79>[^\\|]+)\\|(?<field7>[^\\|]+)\\|(?<field80>[^\\|]+)\\|(?<field81>[^\\|]+)\\|(?<field82>[^\\|]+)\\|(?<field83>[^\\|]+)\\|(?<field84>[^\\|]+)\\|(?<field85>[^\\|]+)\\|(?<field86>[^\\|]+)\\|(?<field87>[^\\|]+)\\|(?<field88>[^\\|]+)\\|(?<field89>[^\\|]+)\\|(?<field8>[^\\|]+)\\|(?<field90>[^\\|]+)\\|(?<field91>[^\\|]+)\\|(?<field92>[^\\|]+)\\|(?<field93>[^\\|]+)\\|(?<field94>[^\\|]+)\\|(?<field95>[^\\|]+)\\|(?<field96>[^\\|]+)\\|(?<field97>[^\\|]+)\\|(?<field98>[^\\|]+)\\|(?<field99>[^\\|]+)\\|(?<field9>[^\\|]+)$', 'gm') const str = `test1|test10|test100|test101|test102|test103|test104|test105|test106|test107|test108|test109|test11|test110|test111|test112|test113|test114|test115|test116|test117|test118|test119|test12|test120|test121|test122|test123|test124|test125|test126|test127|test128|test129|test13|test130|test131|test132|test133|test134|test135|test136|test137|test138|test139|test14|test140|test141|test142|test143|test144|test145|test146|test147|test148|test149|test15|test150|test151|test152|test153|test154|test155|test156|test157|test158|test159|test16|test160|test161|test162|test163|test164|test165|test166|test167|test168|test169|test17|test170|test171|test172|test173|test174|test175|test176|test177|test178|test179|test18|test180|test19|test2|test20|test21|test22|test23|test24|test25|test26|test27|test28|test29|test3|test30|test31|test32|test33|test34|test35|test36|test37|test38|test39|test4|test40|test41|test42|test43|test44|test45|test46|test47|test48|test49|test5|test50|test51|test52|test53|test54|test55|test56|test57|test58|test59|test6|test60|test61|test62|test63|test64|test65|test66|test67|test68|test69|test7|test70|test71|test72|test73|test74|test75|test76|test77|test78|test79|test8|test80|test81|test82|test83|test84|test85|test86|test87|test88|test89|test9|test90|test91|test92|test93|test94|test95|test96|test97|test98|test99 test1|test10|test100|test101|test102|test103|test104|test105|test106|test107|test108|test109|test11|test110|test111|test112|test113|test114|test115|test116|test117|test118|test119|test12|test120|test121|test122|test123|test124|test125|test126|test127|test128|test129|test13|test130|test131|test132|test133|test134|test135|test136|test137|test138|test139|test14|test140|test141|test142|test143|test144|test145|test146|test147|test148|test149|test15|test150|test151|test152|test153|test154|test155|test156|test157|test158|test159|test16|test160|test161|test162|test163|test164|test165|test166|test167|test168|test169|test17|test170|test171|test172|test173|test174|test175|test176|test177|test178|test179|test18|test180|test19|test2|test20|test21|test22|test23|test24|test25|test26|test27|test28|test29|test3|test30|test31|test32|test33|test34|test35|test36|test37|test38|test39|test4|test40|test41|test42|test43|test44|test45|test46|test47|test48|test49|test5|test50|test51|test52|test53|test54|test55|test56|test57|test58|test59|test6|test60|test61|test62|test63|test64|test65|test66|test67|test68|test69|test7|test70|test71|test72|test73|test74|test75|test76|test77|test78|test79|test8|test80|test81|test82|test83|test84|test85|test86|test87|test88|test89|test9|test90|test91|test92|test93|test94|test95|test96|test97|test98|test99 `; // Reset `lastIndex` if this regex is defined globally // regex.lastIndex = 0; let m; while ((m = regex.exec(str)) !== null) { // This is necessary to avoid infinite loops with zero-width matches if (m.index === regex.lastIndex) { regex.lastIndex++; } // The result can be accessed through the `m`-variable. m.forEach((match, groupIndex) => { console.log(`Found match, group ${groupIndex}: ${match}`); }); }

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 JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions