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 = "^([A-ZА-ЯІ1]*)([\\-]*)([A-ZА-ЯІ\\-]*)([\\d]+)([A-ZА-ЯЁ]*)$"; final String string = "-Г002712\n" + "І-ИД063893\n" + "1-028174\n" + "І-Л014733\n" + "1-АП128659\n" + "І-СГ146931\n" + "1-С041292\n" + "1-ВЛ051152\n" + "1-КИ069187\n" + "І-255127\n" + "1-Л008971\n" + "ІІ-КГ017758\n" + "1-ВЛ007030\n" + "1-КИ008285\n" + "ДВІДКА\n" + "І-КГ030207\n" + "ІІІ-КГ009119\n" + "1-АП086136\n" + "1-АП076840\n" + "---------------------\n" + "1-АП048613\n" + "І-Л078811\n" + "1-АП012866\n" + "І-ГЮ079869\n" + "1-ГЮ060483\n" + "1-КИ089568\n" + "І-ГЮ079868\n" + "І-Л007958\n" + "1-АП223168\n" + "1-ГЮ060481\n" + "І-Г067471\n" + "І-Г002616\n" + "І-Л015822\n" + "1-АП017974\n" + "І-С019211\n" + "І-С019213\n" + "І-А112041\n" + "1-КИ160553\n" + "1-СГ154098\n" + "І-КИ122043\n" + "1-СГ178975\n" + "1-ГЮ060482\n" + "І-ГЮ079867\n" + "1-КИ276620\n" + "І-КИ234836\n" + "І-ЖС029733\n" + "І-БВ037801\n" + "1-АП006220\n" + "1-КИ144887\n" + "І-А199461\n" + "1-АП027501\n" + "І-КИ140357\n" + "І-КИ203458\n" + "І-ГЮ079745\n" + "І-КГ134568\n" + "І-ФП121614\n" + "1-ТП071258\n" + "I-389998\n" + "1-КИ099839\n" + "1-КИ091910\n" + "І-ГЮ079742\n" + "1-АП129549\n" + "І-ФП121553\n" + "І-ГЮ079744\n" + "1-ГЮ069409\n" + "І-ГЮ060318\n" + "1-СГ211384\n" + "1-БВ080562\n" + "1-334035\n" + "1-КИ091886\n" + "І-ЖС061642\n" + "1-ГЮ069411\n" + "І-ГЮ069284\n" + "І-ЖС044605\n" + "І-ГЮ079937\n" + "1-ГЮ069412\n" + "І-СГ019424\n" + "І-ГЮ079743\n" + "1-АП129527\n" + "1-А030138\n" + "І-ГЮ085115\n" + "І-ГЮ065184\n" + "І-106389\n" + "І-ГЮ071047\n" + "1-ГЮ069417\n" + "1-ВЛ153623\n" + "1-ВЛ162954\n" + "І-ГЮ079820\n" + "І-ГЮ071044\n" + "1-АП062971\n" + "І-КГ080596\n" + "І-ФП013593\n" + "І-ГЮ079816\n" + "І-КГ050684\n" + "1-ГЮ069416\n" + "І-Д111974\n" + "І-ГЮ079818\n" + "1-АП135540\n" + "1-А044099\n" + "І-ГЮ079931\n" + "І-ГЮ079819\n" + "І-ГЮ079870\n" + "І-И046068\n" + "І-К076601\n" + "1-К017444\n" + "І-ГЮ060469\n" + "І-ГЮ079817\n" + "1-ГЮ069413\n" + "1-СГ318235\n" + "1-А081279\n" + "І-КГ080595\n" + "1-АП007490\n" + "І-К068117\n" + "1-СГ046160\n" + "І-ГЮ079936\n" + "І-ГЮ069285\n" + "І-ГЮ069288\n" + "І-ГЮ060467\n" + "І-ГЮ071046\n" + "І-КГ009254\n" + "І-ГЮ079938\n" + "1-ТП202738\n" + "1-ГЮ060485\n" + "І-ГЮ069286\n" + "І-ГЮ060470\n" + "1-КИ052212\n" + "1-БВ076190\n" + "І-ГЮ060466\n" + "І-ГЮ071045\n" + "ВИДАДВІДКУ\n" + "1-Д050757\n" + "І-КГ092791\n" + "І-КИ086717\n" + "І-ГЮ071048\n" + "І-ГЮ071041\n" + "СВ-ВВИДА\n" + "І-ГЮ069353\n" + "1-ГЮ005041\n" + "І-Г119501\n" + "І-ГЮ060302\n" + "1-АП114999\n" + "1-ГЮ056591\n" + "І-С040269\n" + "1-ГЮ070977\n" + "І-ГЮ060454\n" + "І-ГЮ079772\n" + "1-ФП073259\n" + "І-ГЮ071043\n" + "І-С007205\n" + "1-ГЮ016004\n" + "І-ФП089676\n" + "І-ГЮ071088\n" + "І-ГЮ079773\n" + "1-ТП028944\n" + "1-ГЮ079912\n" + "1-ЖД152813\n" + "І-ГЮ069354\n" + "1-ТП023614\n" + "1-ГЮ079769\n" + "І-ГЮ069153\n" + "І-ГЮ060301\n" + "1-Г052053\n" + "1-БК070591\n" + "1-ГЮ070978\n" + "1-АП039899\n" + "І-ГЮ069231\n" + "І-АП108505\n" + "І-ГЮ034983\n" + "1-ГЮ079766\n" + "І-ГЮ069158\n" + "І-ГЮ019806\n" + "І-ФП093641\n" + "1-АП120402\n" + "І-ЖС003551\n" + "1-ГЮ079767\n" + "І-ГЮ069154\n" + "І-ГЮ060452\n" + "І-ГЮ069151\n" + "1-ГЮ070979\n" + "1-КИ178703\n" + "І-ГЮ069155\n" + "І-ГЮ071039\n" + "І-ГЮ071087\n" + "І-ГЮ102050\n" + "І-ГЮ079774\n" + "І-ГЮ060303\n" + "І-ЖС076855\n" + "І-ГЮ071040\n" + "І-ГЮ071091\n" + "І-ГЮ079807\n" + "1-КИ123065\n" + "І-ГЮ071090\n" + "1-АП023158\n" + "І-ГЮ069356\n" + "І-ГЮ071026\n" + "І-А112126\n" + "І-ГЮ071027\n" + "1-КИ082667\n" + "І-ГЮ071028\n" + "1-ГЮ070976\n" + "1-СГ259991\n" + "1-СГ018084\n" + "1-ГЮ000534\n" + "І-ГЮ069165\n" + "1-Л030767\n" + "1-АП009776Ё\n" + "1-СГ318072\n" + "1-ГЮ079768\n" + "І-ГЮ069357\n" + "І-КИ081218\n" + "І-ГЮ069229\n" + "1-АП084070\n" + "1-КИ088576\n" + "1-КИ160784\n" + "1-АП139778\n" + "І-ГЮ079771\n" + "І-ГЮ084726\n" + "І-ГЮ069355\n" + "І-ГЮ069230\n" + "І-ГЮ060453\n" + "І-Д243229\n" + "1-А106171\n" + "1-СГ288114\n" + "1-ГЮ079911\n" + "1-194798\n" + "І-ГБ069232\n" + "І-ГЮ060300\n" + "І-А216767\n" + "І-ФП121661\n" + "1-ГЮ079770\n" + "1-КИ160286\n" + "І-ГЮ069233\n" + "І-127272\n" + "І-ГЮ071024\n" + "1-ГЮ):(;!*\n" + "1-ВЛ061008\n" + "1-ВЛ087708\n" + "І-ГЮ060152\n" + "І-ФП106803\n" + "1-СГ222696\n" + "І-ГЮ071025\n" + "1-ВЛ137400\n" + "І-ФП094019\n" + "І-ГЮ071089\n" + "І-КГ018790\n" + "І-ГЮ056580\n" + "І-ГЮ056678\n" + "І-ГЮ056579\n" + "1-АП085420\n" + "1-А090289\n" + "І-ГЮ049451\n" + "І-ГЮ056453\n" + "І-ЖС048402\n" + "І-ГЮ056454\n" + "І-ГЮ065604\n" + "І-ГЮ056672\n" + "І-Г072389\n" + "І-ГЮ065542\n" + "І-ГЮ057937\n" + "І-ЖС008451\n" + "І-ГЮ065603\n" + "І-АП058276\n" + "І-АП058513\n" + "І-ГЮ065538\n" + "1-СГ333556\n" + "1-200293\n" + "1-ВЛ010179\n" + "1-ВЛ050583\n" + "ІАП036135\n" + "1-КИ069058\n" + "І-ГЮ049427\n" + "І-ГЮ057921\n" + "І-КГ228431\n" + "І-ГЮ049355\n" + "1-КИ119834\n" + "1-ТП121575\n" + "І-ГЮ057922\n" + "І-Л074336\n" + "1-СГ115852\n" + "1-ГЮ005018\n" + "1-АП086186\n" + "1-ГЮ049346\n" + "І-ГЮ049455\n" + "І-ГЮ057960\n" + "1-КИ199276\n" + "1-ГЮ049347\n" + "1-КИ127680\n" + "І-ГЮ056455\n" + "1-БК070429\n" + "І-ГЮ056578\n" + "І-СГ131185\n" + "І-ГЮ049315\n" + "І-ГЮ049452\n" + "І-ГЮ065601\n" + "І-ГЮ049454\n" + "І-ГЮ056674\n" + "І-ЖС042699\n" + "079380\n" + "1-СГ029058\n" + "І-ГЮ057916\n" + "І-ГЮ056577\n" + "1-СГ142897\n" + "1-Д246695\n" + "І-КГ019161\n" + "1-ВЛ055174\n" + "І-ГЮ065510\n" + "І-КГ086053\n" + "ВИДАДВІДКУПА\n" + "1-КИ091821\n" + "1-БВ126614\n" + "І-КГ037489\n" + "І-ЖД327937\n" + "І-КИ164491\n" + "І-ГЮ049429\n" + "І-ГЮ058998\n" + "СВІДЦТВВИДА\n" + "І-ЖС046868\n" + "1-Д246979\n" + "І-ГЮ057936\n" + "І-СГ204213\n" + "ВИДААДВІДКА\n" + "І-ЖС\n" + "281277\n" + "1-Д054608\n" + "1Д054608\n" + "І-ЖС-\n" + "І-ГЮ057917\n" + "1-СГ343084\n" + "І-ГЮ065508\n" + "І-ГЮ057919\n" + "І-ГЮ065540\n" + "1-ФП067440\n" + "1-ТП009545\n" + "1-КИ088488\n" + "І-ГЮ044602\n" + "І-ГЮ065543\n" + "І-ГЮ000465\n" + "1-ВЛ113896\n" + "І-ГЮ056669\n" + "І-ФП061321\n" + "І-ГЮ049356\n" + "1-ТП065154\n" + "І-КГ123085\n" + "І-ГЮ057906\n" + "1-Д237480\n" + "І-ГЮ056643\n" + "І-ГЮ065506\n" + "І-161338\n" + "1-ВЛ113896\n" + "І-ФП035224\n" + "І-КГ008661\n" + "І-ГЮ065544\n" + "І-172161\n" + "І-ФП068803\n" + "І-ФП068804\n" + "І-ГЮ044604\n" + "І-ГЮ065622\n" + "І-ФП119401\n" + "І-ФП130210\n" + "І-СГ220409\n" + "І-СГ261707\n" + "І-ГЮ049468\n" + "І-ГЮ044601\n" + "1-КГ092546\n" + "094824\n" + "І-КГ019211\n" + "1-ГЮ056449\n" + "1-ГЮ057949\n" + "І-ГЮ056641\n" + "І-ГЮ070383\n" + "І-ГЮ049430\n" + "І-КИ018489\n" + "І-ГЮ057864\n" + "І-ГЮ056670\n" + "І-ГЮ057910\n" + "1-КИ087569\n" + "І-ГЮ065513\n" + "І-ГЮ049415\n" + "І-ГЮ057984\n" + "1-ГЮ056441\n" + "І-ГЮ065511\n" + "І-СГ204242\n" + "І-СГ068915\n" + "І-Г004769\n" + "І-С074924\n" + "1-КИ099876\n" + "1-КИ117306\n" + "1-ГЮ056448\n" + "І-ГЮ049359\n" + "1-СГ061130\n" + "І-ФП026127\n" + "1-ТП015443\n" + "І-ГЮ049360\n" + "1-СГ080164\n" + "І-ГЮ049414\n" + "1-СГ343177\n" + "І-ГЮ049330\n" + "І-ГЮ065621\n" + "І-БК141010\n" + "1-ГЮ056446\n" + "І-ГЮ065512\n" + "1-ГЮ007905\n" + "1-КИ080324\n" + "1-ГЮ056445\n" + "І-ГЮ049470\n" + "І-КИ146938\n" + "І-ГЮ056516\n" + "І-ГЮ056452\n" + "1-ГЮ049344\n" + "І-СГ113157\n" + "І-004569\n" + "І-252971\n" + "1-ВЛ022633\n" + "1-КГ087722\n" + "1-Д139943\n" + "1-КИ085638\n" + "І-ГЮ049343\n" + "І-КГ030081\n" + "І-ГЮ044600\n" + "-Л037993\n" + "І-ГЮ056639\n" + "І-КГ136427\n" + "І-КИ234953\n" + "І-ГЮ057994\n" + "І-ГЮ057995\n" + "І-С105260\n" + "І-С064864\n" + "І-ГЮ057925\n" + "І-СГ068947\n" + "1-КИ120052\n" + "1-Д111322\n" + "1-К071634\n" + "І-Г013705\n" + "І-ГЮ049456\n" + "1-Г028963\n" + "1-Г0850345\n" + "І-ГЮ049460\n" + "І-ГЮ049457\n" + "1-К011683\n" + "І-ГЮ044703\n" + "1-Д186995\n" + "І-С064945\n" + "І-ГЮ057923\n" + "І-ГЮ057918\n" + "І-ГЮ057985\n" + "І-СГ274985\n" + "І-ГЮ049434\n" + "1-Л040584\n" + "1-ТП068259\n" + "1-ГЮ272062\n" + "І-АП114690\n" + "1-Д264500\n" + "1-Д054521\n" + "І-ФП068327\n" + "1-ГЮ049348\n" + "1-ФП042384\n" + "І-ГЮ049459\n" + "І-ЖС088476\n" + "1-ГЮ056443\n" + "1-Д237471\n" + "1-КИ194712\n" + "1-КИ008298\n" + "І-КГ037328\n" + "ІЖС052251\n" + "І-ГЮ049337\n" + "І-КГ080693\n" + "І-ЖД306604\n" + "І-ГЮ056684\n" + "1-АП186277\n" + "І-КИВИДА\n" + "І-ГЮ065553\n" + "І-ГЮ049340\n" + "І-ТП272562\n" + "І-ТП279021\n" + "1-ТП103104\n" + "І-ГЮ049413\n" + "1-Л021936\n" + "СВІДЦТВВИДА.\n" + "1-АП168687\n" + "І-346530\n" + "І-ГЮ049336\n" + "1-Г029053\n" + "І-ГЮ057861\n" + "067125\n" + "І-170879\n" + "1-ФП073214\n" + "1-ФП062671\n" + "ІГ072493\n" + "І-ГЮ065551\n" + "І-АП114083\n" + "І-ГЮ057863\n" + "І-ЖС010611\n" + "І-ГЮ049462\n" + "1-КИ099481\n" + "1-Ф11039926\n" + "І-АП108768\n" + "1-ФП083031\n" + "1-АП015832"; 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