Regular Expressions 101

Save & Share

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

import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main(String[] args) { final String regex = "\\s*\\\"(.*?)\"\\,"; final String string = " // 切换每屏显示个数de下拉菜单\n" + " $_num_per_page_selector: $('.change_pic_no'),\n" + " // 切换每屏显示个数de下拉菜单子选项\n" + " $_num_per_page_option: $('.change_pic_no option'),\n" + " // 每屏显示个数\n" + " list_num: _pageCtrl.getListNumFromCache(),\n" + " // 图片放置区\n" + " $_imgs_container: $('#viewer'),\n" + " // 本章节所有img地址\n" + " all_imgs_url: [\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/5e51eeda0422de44a7cc260b4239d4f9.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/b169fffe8580bb2a4e736bf9288c4fad.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/5cce25ff8c3ce169488fe6c6f1ad3c97.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/003fd16c0dee24a11adf0b47d6120f3d.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/83b3b79f3802894efd6dec0c0e452e5b.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/d843eaa1b81137aecdcebf7121078185.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/6376cf9d9ffd7834017c4afc8505b635.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/2411738e33e3a1e464006e8677029c01.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/4b86521fb429633d44697456d41ac4e5.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/4b4aa1c0279a22e620ff0f20ecf77fc7.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/7ec4f2bc3323fb10495b903c70e1eab1.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/739ee4d04bd40d69a16f49c77d280cb0.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/0df520c6780a27245f7c0763c1295d87.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/c82dfce026673c63c23304c4d040f505.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/8b4e1845b38e603d9c6a2cb240c13123.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/7bb09a9a59920da2c778f2ad47a9b1f0.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/569a09eb72e772b6ace7c5e2d0447f34.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/3e38e322dc3b86805d0ba38ed5132668.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/2ee4162f4a89db5fa43b3b08900ee370.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/2a0d301d3dfcfa4574a46dd62f1be621.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/4d01d457e14b05aee2f2fc66caa07567.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/c991ed71d6afc22ace56730ec57c8c1f.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/c7b4bb942f0b5d4860d4319772182765.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/6d8baf465e25dcb5f546646ee3f9c000.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/e8d0467189fccf2dff63796aa47202fc.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/dbbd93eaf25225110ca26eb66da77328.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/e1bd3c7b2884187cdb13faabfa282fcb.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/42abb461b5a51fb0d354de2ba3c42c1a.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/f730b308554b7170192825a9e45a7727.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/2c573a074732c9dad456e1e9f9ffc238.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/b53f8d01835616293e994afe0ea01bdf.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/34005deb3eddd8787abaa56e1febced6.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/8e5ac35e1661cc14cb518fa9b9364854.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/b3b7dfe55630f2698ea2ae11f99bdd1e.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/fd6ffc421d665cc56fb3bf21056021a6.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/c8184d0dd8374a1365d93138fae4e0a3.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/25f1dd619a9da443c7a26bf223e4b3d5.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/5a4be1fa34e62bb8a6ec6b91d2462f5a.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/80a6735670c663be9a6ea6114c4e2826.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/b87eaba112da2deea0be15ab2dcbeffd.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/0283baf7c9ff556f467ccc5d6b41740c.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/2bfe367f6f040df48462a1a9a684ea43.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/25a844cd59d505b13d7d556d40695278.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/0c82981ec9179f78b80a68e30bc1cee2.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/cece71e6f3adbf6c3a49f21f265f41f4.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/372516fe16e4bd193b86755a09648eac.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/c15195a2b05a7c71389302876168bc05.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/b4edda67f0f57e218a8e766927e3e5c5.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/d09257e7c474592af699daf98250a18f.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/9b176b5fa5bbb3494d354ecc7cb31386.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/18642f540da86f2d4907488c735454a9.jpg\",\n" + " \"https://na3.taadd.com/es_manga/pic8/18/26834/875557/f8901656b0f02a487c453b1479be1f46.jpg\",\n" + " ],\n" + " // 下一章节url\n" + " next_chp_url: next_page_url,\n" + " // 上一章节url\n" + " prev_chp_url: pre_page_url,\n" + " // 获取图片单元字符串\n" + " getPicUnitTemp: function (idx, pic_url, first_idx, last_idx) {\n" + " var str = \"\";\n" + " str += \"<div class=\\\"pic_box\\\">\";\n" + " str += \" <div class=\\\"tool\\\">\";\n" + " str += \" <div class=\\\"btn\\\">\";\n" + " str += \" <span>\";\n" + " str += \" <em><a target=\\\"_blank\\\" href=\\\"\"+pic_url+\"\\\" title=\\\"\"+pic_url+\"\\\" alt=\\\"\"+pic_url+\"\\\">\"+idx+\" of \"+this.all_imgs_url.length+\"</a></em>\";\n" + " str += \" <em>|</em>\";\n" + " str += \" <em class=\\\"reload\\\" rel=\\\"\"+idx+\"\\\">Reload this image</em>\";\n" + " str += \" <em>|</em>\";\n" + " str += \" <em><a href=\\\"https://www.mangatag.com/download.html\\\">Download</a></em>\";\n" + " str += \" </span>\";\n" + " str += \" </div>\";\n" + " str += \" </div>\";\n" + " str += \" <img class=\\\"manga_pic manga_pic_\"+idx+\" arrow-down\\\" i=\\\"\"+first_idx+\"\\\" e=\\\"\"+last_idx+\"\\\" src=\\\"\"+pic_url+\"\\\" onerror=\\\"this.src='\"+pic_url+\"'\\\" border=\\\"0\\\">\";\n" + " str += \"</div>\";\n" + " return str;\n" + " },"; final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE); 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