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

Substitution

Processing...

Code Generator

Generated Code

# coding=utf8 # the above tag defines encoding for this document and is for Python 2.x compatibility import re regex = r"^\s*(?:(?:\S\s?)*\s+){2}(?:L\d+:\s*)?| +(?= )" test_str = ("1FC8 0801 000A BTst.B #$A, D1\n" "1FCC 6608 BNE.B L315\n" "1FCE 0240 00FF And #$FF, D0\n" "1FD2 43F8 0400 Lea.L (DispatchTab), A1\n" "1FD6 E548 L315: LsL #$2, D0\n" "1FD8 2388 0000 Move.L A0, $0(A1,D0.W)\n" "1FDC 7000 MoveQ.L #$0, D0\n" "1FDE 4E75 Rts\n" "1FE0 6102 L316: Bsr.B P42\n" "1FE2 60F2 Bra.B L315\n\n" " P42:\n" "1FE4 0240 01FF And #$1FF, D0\n" "1FE8 43F8 0C00 Lea.L (ToolDispTable), A1\n" "1FEC 0C40 0057 Cmp #$57, D0\n" "1FF0 6212 BHI.B L318\n" "1FF2 670C BEQ.B L317\n" "1FF4 0C40 004F Cmp #$4F, D0\n" "1FF8 6306 BLS.B L317\n" "1FFA 0C40 0054 Cmp #$54, D0\n" "1FFE 6604 BNE.B L318\n" "2000 43F8 0400 L317: Lea.L (DispatchTab), A1\n" "2004 4E75 L318: Rts\n" "2006 61DC L319: Bsr.B P42\n" "2008 601C Bra.B L320\n\n" " P_tGetTrapAddress:\n" "200A 0801 0009 BTst.B #$9, D1\n" "200E 67F6 BEQ.B L319\n" "2010 0240 01FF And #$1FF, D0\n" "2014 43F8 0C00 Lea.L (ToolDispTable), A1\n" "2018 0801 000A BTst.B #$A, D1\n" "201C 6608 BNE.B L320\n" "201E 0240 00FF And #$FF, D0\n" "2022 43F8 0400 Lea.L (DispatchTab), A1\n" "2026 E548 L320: LsL #$2, D0\n" "2028 2071 0000 Move.L $0(A1,D0.W), A0\n" "202C 7000 MoveQ.L #$0, D0\n" "202E 4E75 Rts") subst = "" # You can manually specify the number of replacements by changing the 4th argument result = re.sub(regex, subst, test_str, 0, re.MULTILINE) if result: print (result) # Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and 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 Python, please visit: https://docs.python.org/3/library/re.html