Regular Expressions 101

Save & Share

  • Regex Version: ver. 4
  • 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

@
@
g

Test String

Code Generator

Generated Code

import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main(String[] args) { final String regex = ".*(<w:p>.*?\\{\\{zxc\\}\\}.*?<w:p>)"; final String string = "<w:document xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" xmlns:w10=\"urn:schemas-microsoft-com:office:word\" xmlns:wp=\"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing\" xmlns:wps=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\" xmlns:wpg=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\" xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" xmlns:wp14=\"http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing\" xmlns:w14=\"http://schemas.microsoft.com/office/word/2010/wordml\" mc:ignorable=\"w14 wp14\"><w:body><w:tbl><w:tblpr><w:tblw w:w=\"10916\" w:type=\"dxa\"><w:jc w:val=\"left\"><w:tblind w:w=\"53\" w:type=\"dxa\"><w:tblborders><w:top w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:left w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:bottom w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insideh w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"></w:insideh></w:bottom></w:left></w:top></w:tblborders><w:tblcellmar><w:top w:w=\"55\" w:type=\"dxa\"><w:left w:w=\"51\" w:type=\"dxa\"><w:bottom w:w=\"55\" w:type=\"dxa\"><w:right w:w=\"55\" w:type=\"dxa\"></w:right></w:bottom></w:left></w:top></w:tblcellmar></w:tblind></w:jc></w:tblw></w:tblpr><w:tblgrid><w:gridcol w:w=\"5458\"><w:gridcol w:w=\"5457\"></w:gridcol></w:gridcol></w:tblgrid><w:tr><w:trpr></w:trpr><w:tc><w:tcpr><w:tcw w:w=\"5458\" w:type=\"dxa\"><w:tcborders><w:top w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:left w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:bottom w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insideh w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"></w:insideh></w:bottom></w:left></w:top></w:tcborders><w:shd w:fill=\"auto\" w:val=\"clear\"><w:tcmar><w:left w:w=\"51\" w:type=\"dxa\"></w:left></w:tcmar></w:shd></w:tcw></w:tcpr><w:p><w:ppr><w:pstyle w:val=\"Style25\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:lang w:val=\"en-US\"></w:lang></w:rpr><w:t>123</w:t></w:r></w:p></w:tc><w:tc><w:tcpr><w:tcw w:w=\"5457\" w:type=\"dxa\"><w:tcborders><w:top w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:left w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:bottom w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:right w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insideh w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insidev w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"></w:insidev></w:insideh></w:right></w:bottom></w:left></w:top></w:tcborders><w:shd w:fill=\"auto\" w:val=\"clear\"><w:tcmar><w:left w:w=\"51\" w:type=\"dxa\"></w:left></w:tcmar></w:shd></w:tcw></w:tcpr><w:p><w:ppr><w:pstyle w:val=\"Style25\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:lang w:val=\"en-US\"></w:lang></w:rpr><w:t>1231</w:t></w:r></w:p></w:tc></w:tr><w:tr><w:trpr></w:trpr><w:tc><w:tcpr><w:tcw w:w=\"5458\" w:type=\"dxa\"><w:tcborders><w:top w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:left w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:bottom w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insideh w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"></w:insideh></w:bottom></w:left></w:top></w:tcborders><w:shd w:fill=\"auto\" w:val=\"clear\"><w:tcmar><w:left w:w=\"51\" w:type=\"dxa\"></w:left></w:tcmar></w:shd></w:tcw></w:tcpr><w:p><w:ppr><w:pstyle w:val=\"Style25\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:lang w:val=\"en-US\"></w:lang></w:rpr><w:t>123</w:t></w:r></w:p></w:tc><w:tc><w:tcpr><w:tcw w:w=\"5457\" w:type=\"dxa\"><w:tcborders><w:top w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:left w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:bottom w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:right w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insideh w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"><w:insidev w:val=\"single\" w:sz=\"2\" w:space=\"0\" w:color=\"000001\"></w:insidev></w:insideh></w:right></w:bottom></w:left></w:top></w:tcborders><w:shd w:fill=\"auto\" w:val=\"clear\"><w:tcmar><w:left w:w=\"51\" w:type=\"dxa\"></w:left></w:tcmar></w:shd></w:tcw></w:tcpr><w:p><w:ppr><w:pstyle w:val=\"Style25\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:lang w:val=\"en-US\"></w:lang></w:rpr><w:t>23</w:t></w:r></w:p></w:tc></w:tr></w:tbl><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr><w:b><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"></w:szcs></w:sz></w:b></w:b></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"></w:szcs></w:sz></w:b></w:rpr></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:rpr><w:t>{{qwe}}</w:t></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr><w:b><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:b></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:rpr></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:rpr><w:t>{{</w:t></w:r><w:r><w:rpr><w:b w:val=\"false\"><w:bcs w:val=\"false\"><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:bcs></w:b></w:rpr><w:t>asd</w:t></w:r><w:r><w:rpr><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:rpr><w:t>}}</w:t></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr><w:b><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:b></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:b></w:rpr></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b w:val=\"false\"><w:bcs w:val=\"false\"><w:sz w:val=\"21\"><w:szcs w:val=\"21\"><w:lang w:val=\"en-US\"></w:lang></w:szcs></w:sz></w:bcs></w:b></w:rpr><w:t>{{zxc}}</w:t></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr></w:rpr></w:r></w:p><w:p><w:ppr><w:pstyle w:val=\"Style17\"><w:rpr></w:rpr></w:pstyle></w:ppr><w:r><w:rpr><w:b w:val=\"false\"><w:bcs w:val=\"false\"><w:lang w:val=\"en-US\"></w:lang></w:bcs></w:b></w:rpr><w:t>{{check4}}</w:t></w:r></w:p><w:sectpr><w:footerreference w:type=\"default\" r:id=\"rId2\"><w:type w:val=\"nextPage\"><w:pgsz w:w=\"11906\" w:h=\"16838\"><w:pgmar w:left=\"567\" w:right=\"423\" w:header=\"0\" w:top=\"1077\" w:footer=\"709\" w:bottom=\"1259\" w:gutter=\"0\"><w:pgnumtype w:fmt=\"decimal\"><w:formprot w:val=\"false\"><w:textdirection w:val=\"lrTb\"><w:docgrid w:type=\"default\" w:linepitch=\"360\" w:charspace=\"0\"></w:docgrid></w:textdirection></w:formprot></w:pgnumtype></w:pgmar></w:pgsz></w:type></w:footerreference></w:sectpr></w:body></w:document>"; final Pattern pattern = Pattern.compile(regex); final Matcher matcher = pattern.matcher(string); while (matcher.find()) { System.out.println("Full match: " + matcher.group(0)); for (int i = 1; i <= matcher.groupCount(); i++) { System.out.println("Group " + i + ": " + matcher.group(i)); } } } }

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 Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html