Regular Expressions 101

Save & Manage Regex

  • Current Version: 1
  • Save & Share
  • Community Library

Flavor

  • PCRE2 (PHP)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java
  • .NET 7.0 (C#)
  • Rust
  • PCRE (Legacy)
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests
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
Processing...

Test String

Substitution
Processing...

Code Generator

Generated Code

using System; using System.Text.RegularExpressions; public class Example { public static void Main() { string pattern = @"(?<System1>SYSTEM *\n *?TYPE *= )HP(?<System2>.*?FURNACE-HIR +?= [.0-9]+)\n(?<System3>.*?\.\.\n)(?<ZoneName>\"".*?\"")"; string substitution = @"${System1}PSZ${System2}\n CONTROL-ZONE = ${ZoneName}\n${System3}${ZoneName}"; string input = @"""EL1 Sys1 (PTAC) (G.SSW1)"" = SYSTEM TYPE = PSZ HEAT-SOURCE = HEAT-PUMP ZONE-HEAT-SOURCE = NONE SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 HP-SUPP-SOURCE = NONE FURNACE-HIR = 1.24067 CONTROL-ZONE = ""EL1 SSW Perim Zn (G.SSW1)"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 SSW Perim Zn (G.SSW1)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 SSW Perim Spc (G.SSW1)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .. ""EL1 SSW Perim Pl Zn (G.SSW38)"" = ZONE TYPE = UNCONDITIONED DESIGN-HEAT-T = 72 DESIGN-COOL-T = 81 SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 SSW Perim Plnm (G.SSW38)"" .. ""EL1 Sys1 (PTAC) (G.W2)"" = SYSTEM TYPE = HP SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 FURNACE-HIR = 1.24067 HEAT-ELEC-METER = ""Electric Meter 2"" COOL-ELEC-METER = ""Electric Meter 2"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 West Perim Zn (G.W2)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 BASEBOARD-RATING = -20481.2 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS CW-LOOP = ""DEFAULT-CW"" SPACE = ""EL1 West Perim Spc (G.W2)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .. ""EL1 West Perim Pl Zn (G.W39)"" = ZONE TYPE = UNCONDITIONED DESIGN-HEAT-T = 72 DESIGN-COOL-T = 81 SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Plnm (G.W39)"" .. ""EL1 Sys1 (PTAC) (G.W3)"" = SYSTEM TYPE = HP SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 FURNACE-HIR = 1.24067 HEAT-ELEC-METER = ""Electric Meter 2"" COOL-ELEC-METER = ""Electric Meter 2"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 West Perim Zn (G.W3)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 BASEBOARD-RATING = -20778.4 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Spc (G.W3)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .. ""EL1 West Perim Pl Zn (G.W40)"" = ZONE TYPE = UNCONDITIONED DESIGN-HEAT-T = 72 DESIGN-COOL-T = 81 SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Plnm (G.W40)"" .. ""EL1 Sys1 (PTAC) (G.W4)"" = SYSTEM TYPE = HP SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 FURNACE-HIR = 1.24067 HEAT-ELEC-METER = ""Electric Meter 2"" COOL-ELEC-METER = ""Electric Meter 2"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 West Perim Zn (G.W4)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 BASEBOARD-RATING = -20671 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Spc (G.W4)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .. ""EL1 West Perim Pl Zn (G.W41)"" = ZONE TYPE = UNCONDITIONED DESIGN-HEAT-T = 72 DESIGN-COOL-T = 81 SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Plnm (G.W41)"" .. ""EL1 Sys1 (PTAC) (G.W5)"" = SYSTEM TYPE = HP SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 FURNACE-HIR = 1.24067 HEAT-ELEC-METER = ""Electric Meter 2"" COOL-ELEC-METER = ""Electric Meter 2"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 West Perim Zn (G.W5)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 BASEBOARD-RATING = -20649.5 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Spc (G.W5)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .. ""EL1 West Perim Pl Zn (G.W42)"" = ZONE TYPE = UNCONDITIONED DESIGN-HEAT-T = 72 DESIGN-COOL-T = 81 SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Plnm (G.W42)"" .. ""EL1 Sys1 (PTAC) (G.W6)"" = SYSTEM TYPE = HP SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 FURNACE-HIR = 1.24067 HEAT-ELEC-METER = ""Electric Meter 2"" COOL-ELEC-METER = ""Electric Meter 2"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 West Perim Zn (G.W6)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 BASEBOARD-RATING = -20499.1 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Spc (G.W6)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .. ""EL1 West Perim Pl Zn (G.W43)"" = ZONE TYPE = UNCONDITIONED DESIGN-HEAT-T = 72 DESIGN-COOL-T = 81 SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Plnm (G.W43)"" .. ""EL1 Sys1 (PTAC) (G.W7)"" = SYSTEM TYPE = HP SIZING-RATIO = 1 COOL-SIZING-RATI = 1 MIN-SUPPLY-T = 58 FAN-SCHEDULE = ""S1 Sys1 (PTAC) Fan Sch"" CW-LOOP = ""DEFAULT-CW"" COOLING-CAPACITY = 15752 COOL-SH-CAP = 11839 FURNACE-HIR = 1.24067 HEAT-ELEC-METER = ""Electric Meter 2"" COOL-ELEC-METER = ""Electric Meter 2"" C-EER95 = 8.24 C-COP47 = 0.78 C-AFUE = 0.78 C-SF-MTR-TYPE = 1 C-RF-MTR-TYPE = 1 C-OSA-DMPR-CTRL = 1 C-HTG-DUCT-LOCN = *Ceiling Plenum* C-HTG-DUCT-RVAL = 7 C-CLG-DUCT-LOCN = *Ceiling Plenum* C-CLG-DUCT-RVAL = 7 C-CLG-CAP-CATEG = 14 .. ""EL1 West Perim Zn (G.W7)"" = ZONE TYPE = CONDITIONED MIN-FLOW-RATIO = 1 BASEBOARD-RATING = -20649.5 FLOW/AREA = 0.5 OUTSIDE-AIR-FLOW = 96 EXHAUST-FLOW = 80 DESIGN-HEAT-T = 72 HEAT-TEMP-SCH = ""S1 Sys1 (PTAC) Heat Sch"" DESIGN-COOL-T = 75 COOL-TEMP-SCH = ""S1 Sys1 (PTAC) Cool Sch"" BASEBOARD-CTRL = THERMOSTATIC SIZING-OPTION = ADJUST-LOADS SPACE = ""EL1 West Perim Spc (G.W7)"" C-COMPLIANCE-DHW = ""Res Compliance DHW"" .."; RegexOptions options = RegexOptions.Singleline; Regex regex = new Regex(pattern, options); string result = regex.Replace(input, substitution); } }

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