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

/
/
g

Test String

Substitution

Processing...

Code Generator

Generated Code

#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox Local $sRegex = "([0-9]+)\s+([0-9]+)\s+(.*?)\s+(\w+)" Local $sString = "431619 11 przydzielony/a GER0006" & @CRLF & _ "267526 11 przydzielony/a GER0001" & @CRLF & _ "267541 11 przydzielony/a GER0002" & @CRLF & _ "267682 11 przydzielony/a GER0003" & @CRLF & _ "431621 11 przydzielony/a GER0007" & @CRLF & _ "431328 11 przydzielony/a GER0008" & @CRLF & _ "431615 11 przydzielony/a GER0009" & @CRLF & _ "267506 11 przydzielony/a GER0004" & @CRLF & _ "267538 11 przydzielony/a GER0005" & @CRLF & _ "397099 12 przydzielony/a NL0005" & @CRLF & _ "397402 12 przydzielony/a NL0004" & @CRLF & _ "431540 12 przydzielony/a NL0002" & @CRLF & _ "431643 12 przydzielony/a NL0003" & @CRLF & _ "430638 12 przydzielony/a NL0001" & @CRLF & _ "431542 12 przydzielony/a TEMP0004" & @CRLF & _ "431633 12 przydzielony/a TEMP0006" & @CRLF & _ "371870 4 przydzielony/a CYP0001" & @CRLF & _ "372646 4 przydzielony/a CYP0002" & @CRLF & _ "372640 4 przydzielony/a CYP0003" & @CRLF & _ "371711 4 przydzielony/a CYP0004" & @CRLF & _ "371983 4 przydzielony/a CYP0005" & @CRLF & _ "374428 4 przydzielony/a CYP0006" & @CRLF & _ "374610 4 przydzielony/a CYP0007" & @CRLF & _ "374236 4 przydzielony/a CYP0008" & @CRLF & _ "374264 4 przydzielony/a CYP0009" & @CRLF & _ "374618 4 przydzielony/a CYP0010" & @CRLF & _ "374615 4 przydzielony/a CYP0033" & @CRLF & _ "374617 4 przydzielony/a CYP0011" & @CRLF & _ "374619 4 przydzielony/a CYP0012" & @CRLF & _ "371493 4 przydzielony/a CYP0013" & @CRLF & _ "372438 4 przydzielony/a CYP0014" & @CRLF & _ "371488 4 przydzielony/a CYP0015" & @CRLF & _ "372295 4 przydzielony/a CYP0016" & @CRLF & _ "372663 4 przydzielony/a CYP0019" & @CRLF & _ "371557 4 przydzielony/a CYP0020" & @CRLF & _ "372308 4 przydzielony/a CYP0021" & @CRLF & _ "372636 4 przydzielony/a CYP0022" & @CRLF & _ "372428 4 przydzielony/a CYP0023" & @CRLF & _ "372676 4 przydzielony/a CYP0024" & @CRLF & _ "372426 4 przydzielony/a CYP0025" & @CRLF & _ "372415 4 przydzielony/a CYP0026" & @CRLF & _ "372656 4 przydzielony/a CYP0027" & @CRLF & _ "374416 4 przydzielony/a CYP0028" & @CRLF & _ "374455 4 przydzielony/a CYP0031" & @CRLF & _ "397487 4 przydzielony/a CYP0034" & @CRLF & _ "397387 4 przydzielony/a CYP0035" & @CRLF & _ "397100 4 przydzielony/a CYP0036" & @CRLF & _ "397382 4 przydzielony/a CYP0037" & @CRLF & _ "397081 4 przydzielony/a CYP0038" & @CRLF & _ "401379 4 przydzielony/a CYP0039" & @CRLF & _ "401737 4 przydzielony/a CYP0032" & @CRLF & _ "401550 4 przydzielony/a CYP0040" & @CRLF & _ "397108 4 przydzielony/a CYP0041" & @CRLF & _ "397112 4 przydzielony/a CYP0042" & @CRLF & _ "397105 4 przydzielony/a CYP0043" & @CRLF & _ "397110 4 przydzielony/a CYP0030" & @CRLF & _ "397092 4 przydzielony/a CYP0029" & @CRLF & _ "401674 4 przydzielony/a CYP0044" & @CRLF & _ "401520 4 przydzielony/a CYP0045" & @CRLF & _ "397353 4 przydzielony/a CYP0046" & @CRLF & _ "401665 4 przydzielony/a CYP0047" & @CRLF & _ "397273 4 przydzielony/a CYP0048" & @CRLF & _ "401632 4 przydzielony/a CYP0049" & @CRLF & _ "401599 4 przydzielony/a CYP0050" & @CRLF & _ "397359 4 przydzielony/a CYP0051" & @CRLF & _ "397283 4 przydzielony/a CYP0064" & @CRLF & _ "401641 4 przydzielony/a CYP0052" & @CRLF & _ "401515 4 przydzielony/a CYP0053" & @CRLF & _ "401513 4 przydzielony/a CYP0054" & @CRLF & _ "433826 4 przydzielony/a CYP0058" & @CRLF & _ "433814 4 przydzielony/a CYP0055" & @CRLF & _ "433845 4 przydzielony/a CYP0056" & @CRLF & _ "433785 4 przydzielony/a CYP0057" & @CRLF & _ "433835 4 przydzielony/a CYP0059" & @CRLF & _ "433808 4 przydzielony/a CYP0060" & @CRLF & _ "433786 4 przydzielony/a CYP0066" & @CRLF & _ "433810 4 przydzielony/a CYP0061" & @CRLF & _ "433841 4 przydzielony/a CYP0062" & @CRLF & _ "433840 4 przydzielony/a CYP0063" & @CRLF & _ "433806 4 przydzielony/a CYP0065" & @CRLF & _ "433282 4 przydzielony/a CYP0070" & @CRLF & _ "433813 4 przydzielony/a CYP0068" & @CRLF & _ "433839 4 przydzielony/a CYP0069" & @CRLF & _ "433821 4 przydzielony/a CYP0067" & @CRLF & _ "433818 4 przydzielony/a CYP0071" & @CRLF & _ "433838 4 przydzielony/a CYP0073" & @CRLF & _ "433822 4 przydzielony/a CYP0074" & @CRLF & _ "433820 4 przydzielony/a CYP0075" & @CRLF & _ "433829 4 przydzielony/a CYP0072" & @CRLF & _ "433781 4 przydzielony/a CYP0076" & @CRLF & _ "432534 4 przydzielony/a TEMP0083" & @CRLF & _ "433863 4 przydzielony/a TEMP0084" & @CRLF & _ "432912 4 przydzielony/a TEMP0085" & @CRLF & _ "433616 4 przydzielony/a TEMP0086" & @CRLF & _ "432379 4 przydzielony/a TEMP0087" & @CRLF & _ "432626 4 przydzielony/a TEMP0088" & @CRLF & _ "433211 4 przydzielony/a TEMP0089" & @CRLF & _ "433626 4 przydzielony/a TEMP0090" & @CRLF & _ "432495 4 przydzielony/a TEMP0091" & @CRLF & _ "372639 4 przydzielony/a CYP0017" & @CRLF & _ "371910 4 przydzielony/a CYP0018" & @CRLF & _ "397318 6 przydzielony/a POR0001" & @CRLF & _ "397014 6 przydzielony/a POR0004" & @CRLF & _ "397334 6 przydzielony/a POR0018" & @CRLF & _ "396996 6 przydzielony/a POR0007" & @CRLF & _ "397321 6 przydzielony/a POR0011" & @CRLF & _ "397013 6 przydzielony/a POR0037" & @CRLF & _ "397020 6 przydzielony/a POR0003" & @CRLF & _ "397019 6 przydzielony/a POR0006" & @CRLF & _ "397325 6 przydzielony/a POR0002" & @CRLF & _ "397317 6 przydzielony/a POR0005" & @CRLF & _ "397164 6 przydzielony/a POR0008" & @CRLF & _ "397535 6 przydzielony/a POR0009" & @CRLF & _ "397141 6 przydzielony/a POR0022" & @CRLF & _ "397124 6 przydzielony/a POR0031" & @CRLF & _ "397123 6 przydzielony/a POR0030" & @CRLF & _ "397180 6 przydzielony/a POR0034" & @CRLF & _ "397163 6 przydzielony/a POR0033" & @CRLF & _ "397505 6 przydzielony/a TEMP0048" & @CRLF & _ "431395 6 przydzielony/a POR0014" & @CRLF & _ "431447 6 przydzielony/a POR0023" & @CRLF & _ "431359 6 przydzielony/a POR0028" & @CRLF & _ "431533 6 przydzielony/a TEMP0054" & @CRLF & _ "431524 6 przydzielony/a TEMP0055" & @CRLF & _ "431303 6 przydzielony/a TEMP0056" & @CRLF & _ "431450 6 przydzielony/a TEMP0057" & @CRLF & _ "431375 6 przydzielony/a TEMP0058" & @CRLF & _ "431470 6 przydzielony/a TEMP0059" & @CRLF & _ "431299 6 przydzielony/a TEMP0060" & @CRLF & _ "431302 6 przydzielony/a POR0012" & @CRLF & _ "431300 6 przydzielony/a POR0013" & @CRLF & _ "431316 6 przydzielony/a TEMP0063" & @CRLF & _ "431298 6 przydzielony/a POR0038" & @CRLF & _ "431318 6 przydzielony/a TEMP0065" & @CRLF & _ "431555 6 przydzielony/a TEMP0066" & @CRLF & _ "431578 6 przydzielony/a POR0016" & @CRLF & _ "431616 6 przydzielony/a POR0015" & @CRLF & _ "431560 6 przydzielony/a POR0010" & @CRLF & _ "431363 6 przydzielony/a POR0017" & @CRLF & _ "431150 6 przydzielony/a POR0020" & @CRLF & _ "431158 6 przydzielony/a POR0019" & @CRLF & _ "431205 6 przydzielony/a POR0021" & @CRLF & _ "431148 6 przydzielony/a POR0036" & @CRLF & _ "431456 6 przydzielony/a POR0029" & @CRLF & _ "431408 6 przydzielony/a POR0024" & @CRLF & _ "431337 6 przydzielony/a POR0027" & @CRLF & _ "431367 6 przydzielony/a POR0026" & @CRLF & _ "431355 6 przydzielony/a POR0025" & @CRLF & _ "431370 6 przydzielony/a POR0032" & @CRLF & _ "431543 6 przydzielony/a POR0035" & @CRLF & _ "431410 6 przydzielony/a TEMP0082" & @CRLF & _ "431518 6 przydzielony/a TEMP0083" & @CRLF & _ "431453 6 przydzielony/a TEMP0084" & @CRLF & _ "401690 5 przydzielony/a ITA0015" & @CRLF & _ "397368 5 przydzielony/a ITA0010" & @CRLF & _ "401686 5 przydzielony/a ITA0014" & @CRLF & _ "397380 5 przydzielony/a ITA0016" & @CRLF & _ "401516 5 przydzielony/a TEMP0081" & @CRLF & _ "401592 5 przydzielony/a ITA0008" & @CRLF & _ "401609 5 przydzielony/a ITA0001" & @CRLF & _ "401771 5 przydzielony/a TEMP0082" & @CRLF & _ "401715 5 przydzielony/a ITA0007" & @CRLF & _ "401611 5 przydzielony/a ITA0002" & @CRLF & _ "397116 5 przydzielony/a ITA0017" & @CRLF & _ "397132 5 przydzielony/a ITA0024" & @CRLF & _ "397405 5 przydzielony/a ITA0018" & @CRLF & _ "397104 5 przydzielony/a ITA0019" & @CRLF & _ "397411 5 przydzielony/a ITA0020" & @CRLF & _ "401518 5 przydzielony/a TEMP0088" & @CRLF & _ "397103 5 przydzielony/a ITA0026" & @CRLF & _ "401523 5 przydzielony/a TEMP0090" & @CRLF & _ "401534 5 przydzielony/a ITA0021" & @CRLF & _ "397091 5 przydzielony/a TEMP0092" & @CRLF & _ "431398 5 przydzielony/a TEMP0059" & @CRLF & _ "431350 5 przydzielony/a TEMP0060" & @CRLF & _ "431579 5 przydzielony/a TEMP0061" & @CRLF & _ "431351 5 przydzielony/a TEMP0062" & @CRLF & _ "431599 5 przydzielony/a TEMP0063" & @CRLF & _ "431376 5 przydzielony/a TEMP0064" & @CRLF & _ "431422 5 przydzielony/a TEMP0065" & @CRLF & _ "431381 5 przydzielony/a ITA0025" & @CRLF & _ "431564 5 przydzielony/a TEMP0111" & @CRLF & _ "431565 5 przydzielony/a TEMP0069" & @CRLF & _ "431577 5 przydzielony/a TEMP0070" & @CRLF & _ "431510 5 przydzielony/a TEMP0071" & @CRLF & _ "431561 5 przydzielony/a TEMP0072" & @CRLF & _ "431583 5 przydzielony/a TEMP0073" & @CRLF & _ "431552 5 przydzielony/a TEMP0074" & @CRLF & _ "431571 5 przydzielony/a TEMP0075" & @CRLF & _ "431259 5 przydzielony/a TEMP0076" & @CRLF & _ "431570 5 przydzielony/a TEMP0077" & @CRLF & _ "377368 5 przydzielony/a ITA0012" & @CRLF & _ "401615 5 przydzielony/a ITA0004" & @CRLF & _ "401590 5 przydzielony/a ITA0005" & @CRLF & _ "401508 5 przydzielony/a ITA0006" & @CRLF & _ "401343 5 przydzielony/a ITA0009" & @CRLF & _ "397280 5 przydzielony/a ITA0003" & @CRLF & _ "401506 5 przydzielony/a ITA0011" & @CRLF & _ "401531 5 przydzielony/a TEMP0093" & @CRLF & _ "401687 5 przydzielony/a ITA0013" & @CRLF & _ "401549 5 przydzielony/a ITA0022" & @CRLF & _ "401545 5 przydzielony/a TEMP0036" & @CRLF & _ "431493 5 przydzielony/a ITA0027" & @CRLF & _ "431547 5 przydzielony/a ITA0023" & @CRLF & _ "431481 5 przydzielony/a TEMP0039" & @CRLF & _ "431249 5 przydzielony/a TEMP0040" & @CRLF & _ "431441 5 przydzielony/a TEMP0095" & @CRLF & _ "431505 5 przydzielony/a TEMP0042" & @CRLF & _ "431496 5 przydzielony/a TEMP0043" & @CRLF & _ "431504 5 przydzielony/a TEMP0044" & @CRLF & _ "431513 5 przydzielony/a TEMP0045" & @CRLF & _ "431514 5 przydzielony/a TEMP0046" & @CRLF & _ "431400 5 przydzielony/a TEMP0047" & @CRLF & _ "431391 5 przydzielony/a TEMP0048" & @CRLF & _ "431374 5 przydzielony/a TEMP0049" & @CRLF & _ "431520 5 przydzielony/a TEMP0050" & @CRLF & _ "431587 5 przydzielony/a TEMP0051" & @CRLF & _ "431378 5 przydzielony/a TEMP0052" & @CRLF & _ "431523 5 przydzielony/a TEMP0053" & @CRLF & _ "431379 5 przydzielony/a TEMP0054" & @CRLF & _ "431241 5 przydzielony/a TEMP0055" & @CRLF & _ "431527 5 przydzielony/a TEMP0056" & @CRLF & _ "431401 5 przydzielony/a TEMP0057" & @CRLF & _ "431377 5 przydzielony/a TEMP0058" & @CRLF & _ "448152 5 przydzielony/a TEMP0096" & @CRLF & _ "448142 5 przydzielony/a TEMP0097" & @CRLF & _ "448333 5 przydzielony/a TEMP0098" & @CRLF & _ "448193 5 przydzielony/a TEMP0099" & @CRLF & _ "448091 5 przydzielony/a TEMP0100" & @CRLF & _ "447569 5 przydzielony/a TEMP0101" & @CRLF & _ "447603 5 przydzielony/a TEMP0102" & @CRLF & _ "447565 5 przydzielony/a TEMP0103" & @CRLF & _ "447575 5 przydzielony/a TEMP0104" & @CRLF & _ "447326 5 przydzielony/a TEMP0105" & @CRLF & _ "447578 5 przydzielony/a TEMP0106" & @CRLF & _ "447600 5 przydzielony/a TEMP0107" & @CRLF & _ "447576 5 przydzielony/a TEMP0108" & @CRLF & _ "447834 5 przydzielony/a TEMP0109" & @CRLF & _ "447598 5 przydzielony/a TEMP0110" & @CRLF & _ "" Local $sSubst = "UPDATE cm_element_eav_text\nSET value='\4'\nWHERE id_attrib=89\nAND id=(SELECT id FROM cm_element_eav_text WHERE id_attrib=1 AND value='\1');\n\nUPDATE cm_element\nSET id_klienta=\2, id_statusu=1\nWHERE id=(SELECT id FROM cm_element_eav_text WHERE id_attrib=1 AND value='\1');\n" Local $sResult = StringRegExpReplace($sString, $sRegex, $sSubst) MsgBox($MB_SYSTEMMODAL, "Result", $sResult)

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 AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm