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

using System; using System.Text.RegularExpressions; public class Example { public static void Main() { string pattern = @"\b\sdark:[\w\-:]*\b"; string input = @"<template> <section class=""bg-gray-50 dark:bg-gray-900""> <div class=""flex flex-col items-center justify-center px-6 py-8 mx-auto md:h-screen lg:py-0""> <a href=""#"" class=""flex items-center mb-6 text-2xl font-semibold text-gray-900 dark:text-white""> <img class=""w-8 h-8 mr-2"" src=""https://flowbite.s3.amazonaws.com/blocks/marketing-ui/logo.svg"" alt=""logo""> Flowbite </a> <div class=""w-full bg-white rounded-lg shadow dark:border md:mt-0 sm:max-w-md xl:p-0 dark:bg-gray-800 dark:border-gray-700""> <div class=""p-6 space-y-4 md:space-y-6 sm:p-8""> <h1 class=""text-xl font-bold leading-tight tracking-tight text-gray-900 md:text-2xl dark:text-white""> Create and account </h1> <form class=""space-y-4 md:space-y-6"" action=""#""> <div> <label for=""email"" class=""block mb-2 text-sm font-medium text-gray-900 dark:text-white"">Your email</label> <input type=""email"" name=""email"" id=""email"" class=""bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"" placeholder=""name@company.com"" required=""> </div> <div> <label for=""password"" class=""block mb-2 text-sm font-medium text-gray-900 dark:text-white"">Password</label> <input type=""password"" name=""password"" id=""password"" placeholder=""••••••••"" class=""bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"" required=""> </div> <div> <label for=""confirm-password"" class=""block mb-2 text-sm font-medium text-gray-900 dark:text-white"">Confirm password</label> <input type=""confirm-password"" name=""confirm-password"" id=""confirm-password"" placeholder=""••••••••"" class=""bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500"" required=""> </div> <div class=""flex items-start""> <div class=""flex items-center h-5""> <input id=""terms"" aria-describedby=""terms"" type=""checkbox"" class=""w-4 h-4 border border-gray-300 rounded bg-gray-50 focus:ring-3 focus:ring-primary-300 dark:bg-gray-700 dark:border-gray-600 dark:focus:ring-primary-600 dark:ring-offset-gray-800"" required=""> </div> <div class=""ml-3 text-sm""> <label for=""terms"" class=""font-light text-gray-500 dark:text-gray-300"">I accept the <a class=""font-medium text-primary-600 hover:underline dark:text-primary-500"" href=""#"">Terms and Conditions</a></label> </div> </div> <button type=""submit"" class=""w-full text-white bg-primary-600 hover:bg-primary-700 focus:ring-4 focus:outline-none focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800"">Create an account</button> <p class=""text-sm font-light text-gray-500 dark:text-gray-400""> Already have an account? <a href=""#"" class=""font-medium text-primary-600 hover:underline dark:text-primary-500"">Login here</a> </p> </form> </div> </div> </div> </section> </template> "; RegexOptions options = RegexOptions.Multiline; foreach (Match m in Regex.Matches(input, pattern, options)) { Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index); } } }

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