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
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
Processing...

Test String

Substitution
Processing...

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 = "<div class=\"popup-container modal-expiration-message-link\">.+?</div>\\s+(?=</li>)"; final String string = "<li>\n" + "Срок действия:<div id=\"expiration-message-link\" class=\"question-mark popup-modal popup-expiration-message-link\">?</div> марта 2021\n" + " <div class=\"popup-container modal-expiration-message-link\">\n" + " <div class=\"popup-title\">\n" + " Срок действия\n" + " </div>\n" + " <div class=\"popup-content\">\n" + " <p>Продолжительность срока действия или \"лучше использовать до указанной даты\" зависят от типа продукции и бренда.</p>\n" + " <p>Скоропортящиеся продукты (такие, как масло льна или некоторые пробиотики) обычно имеют более короткие сроки годности. Несмотря на то, что наш склад полностью оснащен оборудованием для кондиционирования воздуха, наиболее скоропортящиеся товары хранятся в холодильнике (морозильной камере или холодильном помещении) для сохранения максимальной свежести.</p>\n" + " <p>Принимающий отдел компании делает все возможное, чтобы убедиться в корректности сроков годности для всех поступающих продуктов и ввести их в систему. Однако, иногда возможны расхождения. Как уже было сказано, исключительно быстрый оборот продукции в iHerb гарантирует, что наши запасы товаров являются одними из самых свежих в отрасли.</p>\n" + " </div>\n" + " </div>\n" + " </li>\n" + " <li>\n" + " Вес Отправления:<div id=\"shipping-weight-link\" class=\"question-mark popup-shipping-weight\">?</div>\n" + " <div class=\"dimensions-popup-wrapper weight\">\n" + " <span class=\"product-weight\">\n" + " 0.21 кг\n" + " </span>\n" + " <div class=\"dimensions-units-popup weight\">Переключиться на империальные единицы</div>\n" + " </div>\n" + " <div class=\"popup-container modal-shipping-weight\">\n" + " <div class=\"popup-title\">Вес Отправления</div>\n" + " </div>\n" + " </li>\n" + " <li>Код Товара: <span itemprop=\"sku\">MLI-00952</span>\n" + "</li>\n" + " <li>UPC Код: <span itemprop=\"gtin12\">898220009527</span>\n" + "</li>\n" + " <li>Количество в Упаковке: 100 штук</li>\n" + " <li>\n" + " Размеры:\n" + " <div class=\"dimensions-popup-wrapper dimensions\">\n" + " <span class=\"product-weight\">\n" + " <span id=\"dimensions\">11.4 x 6.1 x 6.1 cm </span>, \n" + " <span id=\"actual-weight\">0.18 кг</span>\n" + " </span>\n" + " <div class=\"dimensions-units-popup dimensions\">Переключиться на империальные единицы</div>\n" + " </div>\n" + " </li>"; final String subst = ""; final Pattern pattern = Pattern.compile(regex, Pattern.DOTALL); final Matcher matcher = pattern.matcher(string); // The substituted value will be contained in the result variable final String result = matcher.replaceFirst(subst); System.out.println("Substitution result: " + 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 Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html