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
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]
  • Character class intersection
    [\w&&[^\d]]
  • 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

import re regex = re.compile(r"^(([.#]?[\w:>]+,?\s*)+){", flags=re.MULTILINE) test_str = (".rn_CircleImage {\n" " float: right;\n" " color: white;\n" " margin-right: 4vw;\n" " border: 1px solid black;\n" " background: black;\n" " border-radius: 50%;\n" " /* padding-bottom: 20%; */\n" " width: 280px;\n" " height: 280px;\n" " margin-top: -260px;\n" " text-align: center;\n" " vertical-align: middle;\n" " position: relative;\n" " margin-bottom: 4%;\n" " -moz-border-radius: 50%;\n" " -webkit-border-radius: 50%;\n" "}\n\n" ".rn_Hero .rn_HeroInner {\n" " background-image: url(\"/euf/assets/themes/standard/images/CS11572.jpg\") !important;\n" "}\n\n" ".rn_CircleImage .textContainer {\n" " height: 200px;\n" "}\n\n" ".dot,\n" ".period {\n" " cursor: pointer;\n" " height: 10px;\n" " width: 10px;\n" " background-color: #717171;\n" " border-radius: 50%;\n" " display: inline-block;\n" " position: relative;\n" " transition: background-color 0.6s ease;\n" " bottom: -35px;\n" "}\n\n" ".active, .dot:hover {\n" " background-color: #ffffff;\n" "}\n\n" ".rn_CircleImage>li>a {\n" " color: #FFFFFF;\n" "}\n\n" ".urltext a {\n" " color: #FFFFFF;\n" " line-height: 24px;\n" " font-family: \"CS-Type-EP\", \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n" "}\n\n" ".top {\n" " font-size: 1em;\n" " font-family: \"CS-Type-EP\", \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n" " line-height: 24px;\n" "}\n\n" ".bottom {\n" " font-size: 1em;\n" " font-family: \"CS-Type-EP\", \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n" " line-height: 24px;\n" " margin-bottom: 6px;\n" "}\n\n" ".main {\n" " font-size: 1.87em;\n" " font-family: \"CreditSuisseHeadlineWebRegular\", \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n" " line-height: 34px;\n" "}\n\n" ".slide>li {\n" " width: 100%;\n" "}\n\n" "ul.slide {\n" " width: auto !important;\n" " padding-left: 10%;\n" " padding-right: 10%;\n" "}\n\n" ".slide>li:after {\n" " content: \"\";\n" " display: inline;\n" " width: 50%;\n" " height: 0;\n" " padding-bottom: 50%;\n" " background: #4679BD;\n" " -moz-border-radius: 50%;\n" " -webkit-border-radius: 50%;\n" " border-radius: 50%;\n" "}\n\n" ".urltext a {\n" " color: #FFFFFF;\n" " line-height: 30px;\n" " font-family: \"CS-Type-EP\", \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n" " background: transparent url(/euf/assets/themes/standard/images/icons/arrow-right-white.svg) no-repeat right center;\n" " padding-right: 1.7em;\n" " background-size: 1em;\n" " position: absolute;\n" " transition: background-color 0.6s ease;\n" " bottom: 18%;\n" " right: 28%;\n" "}") subst = "#prefix $1{" result = regex.sub(subst, test_str) if result: print(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 Python, please visit: https://docs.python.org/3/library/re.html