Regular Expressions 101

Save & Share

  • Regex Version: ver. 2
  • Update Regex
    ctrl+⇧+s
  • Save new Regex
    ctrl+s
  • Add to Community Library

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

Substitution

Processing...

Code Generator

Generated Code

$re = '#(<tr[^>]*>)(?:\s*<t[dh][^>]*>[^<]*</t[dh]>){4}#m'; $str = '<table > <thead> <tr> <th></th> <th>Купить до</th> <th>Реестр</th> <th>Дата выплаты</th> <th>Период </th> <th >Дивиденд</th> <th >Доходность</th> <th >Цена на закрытии</th> </tr> </thead> <tbody> <tr > <td > </td> <td >3 дек 2021</td> <td >7 дек 2021</td> <td >21 дек 2021</td> <td >3КВ 2021</td> <td >13,33 ₽</td> <td >6,06%</td> <td></td> </tr> <tr > <td > </td> <td >3 сен 2021</td> <td >7 сен 2021</td> <td >21 сен 2021</td> <td >2КВ 2021</td> <td >13,62 ₽</td> <td >5,53%</td> <td > 246,32 ₽ </td> </tr> <tr > <td > </td> <td >21 июн 2021</td> <td >23 июн 2021</td> <td >7 июл 2021</td> <td >1КВ 2021</td> <td >7,71 ₽</td> <td >2,98%</td> <td > 259,04 ₽ </td> </tr> <tr > <td > </td> <td >7 мая 2021</td> <td >11 мая 2021</td> <td >25 мая 2021</td> <td >4КВ 2020</td> <td >7,25 ₽</td> <td >2,63%</td> <td > 276,02 ₽ </td> </tr> <tr > <td > </td> <td >25 дек 2020</td> <td >29 дек 2020</td> <td >12 янв 2021</td> <td >3КВ 2020</td> <td >6,43 ₽</td> <td >2,87%</td> <td > 224,36 ₽ </td> </tr> <tr > <td > </td> <td >8 окт 2020</td> <td >12 окт 2020</td> <td >26 окт 2020</td> <td >2КВ 2020</td> <td >4,75 ₽</td> <td >2,73%</td> <td > 174,28 ₽ </td> </tr> <tr > <td > </td> <td >9 июл 2020</td> <td >13 июл 2020</td> <td >27 июл 2020</td> <td >1КВ 2020</td> <td >3,21 ₽</td> <td >2,29%</td> <td > 140,22 ₽ </td> </tr> <tr > <td > </td> <td >5 июн 2020</td> <td >9 июн 2020</td> <td >23 июн 2020</td> <td >4КВ 2019</td> <td >3,12 ₽</td> <td >2,2%</td> <td > 142 ₽ </td> </tr> <tr > <td > </td> <td >6 янв 2020</td> <td >9 янв 2020</td> <td >23 янв 2020</td> <td >3КВ 2019</td> <td >3,22 ₽</td> <td >2,27%</td> <td > 141,94 ₽ </td> </tr> <tr > <td > </td> <td >8 окт 2019</td> <td >10 окт 2019</td> <td >24 окт 2019</td> <td >2КВ 2019</td> <td >3,68 ₽</td> <td >2,8%</td> <td > 131,58 ₽ </td> </tr> <tr > <td > </td> <td >17 июн 2019</td> <td >19 июн 2019</td> <td >3 июл 2019</td> <td >1КВ 2019</td> <td >7,34 ₽</td> <td >4,03%</td> <td > 182 ₽ </td> </tr> <tr > <td > </td> <td >2 мая 2019</td> <td >6 мая 2019</td> <td >20 мая 2019</td> <td >4КВ 2018</td> <td >5,80 ₽</td> <td >3,31%</td> <td > 175,08 ₽ </td> </tr> <tr > <td > </td> <td >4 янв 2019</td> <td >9 янв 2019</td> <td >23 янв 2019</td> <td >3КВ 2018</td> <td >6,04 ₽</td> <td >3,88%</td> <td > 155,68 ₽ </td> </tr> <tr > <td > </td> <td >10 окт 2018</td> <td >12 окт 2018</td> <td >26 окт 2018</td> <td >2КВ 2018</td> <td >5,24 ₽</td> <td >2,97%</td> <td > 176,34 ₽ </td> </tr> <tr > <td > </td> <td >18 июн 2018</td> <td >20 июн 2018</td> <td >4 июл 2018</td> <td >4КВ 2017</td> <td >3,36 ₽</td> <td >2,01%</td> <td > 167,3 ₽ </td> </tr> <tr > <td > </td> <td >18 июн 2018</td> <td >20 июн 2018</td> <td >4 июл 2018</td> <td >1КВ 2018</td> <td >5,73 ₽</td> <td >3,42%</td> <td > 167,3 ₽ </td> </tr> <tr > <td > </td> <td >4 янв 2018</td> <td >9 янв 2018</td> <td >23 янв 2018</td> <td >3КВ 2017</td> <td >5,13 ₽</td> <td >3,35%</td> <td > 153 ₽ </td> </tr> <tr > <td > </td> <td >10 окт 2017</td> <td >12 окт 2017</td> <td >26 окт 2017</td> <td >2КВ 2017</td> <td >3,20 ₽</td> <td >2,33%</td> <td > 137,4 ₽ </td> </tr> <tr > <td > </td> <td >9 июн 2017</td> <td >14 июн 2017</td> <td >28 июн 2017</td> <td >4КВ 2016</td> <td >3,38 ₽</td> <td >3,1%</td> <td > 109,19 ₽ </td> </tr> <tr > <td > </td> <td >9 июн 2017</td> <td >14 июн 2017</td> <td >28 июн 2017</td> <td >1КВ 2017</td> <td >2,35 ₽</td> <td >2,15%</td> <td > 109,19 ₽ </td> </tr> <tr > <td > </td> <td >5 янв 2017</td> <td >9 янв 2017</td> <td >23 янв 2017</td> <td >3КВ 2016</td> <td >3,63 ₽</td> <td >3,13%</td> <td > 116 ₽ </td> </tr> <tr > <td > </td> <td >10 окт 2016</td> <td >12 окт 2016</td> <td >26 окт 2016</td> <td >2КВ 2016</td> <td >1,08 ₽</td> <td >1,23%</td> <td > 87,85 ₽ </td> </tr> <tr > <td > </td> <td >9 июн 2016</td> <td >14 июн 2016</td> <td >28 июн 2016</td> <td >1КВ 2016</td> <td >1,13 ₽</td> <td >1,4%</td> <td > 80,51 ₽ </td> </tr> <tr > <td > </td> <td >9 июн 2016</td> <td >14 июн 2016</td> <td >28 июн 2016</td> <td >4КВ 2015</td> <td >2,43 ₽</td> <td >3,02%</td> <td > 80,51 ₽ </td> </tr> <tr > <td > </td> <td >5 янв 2016</td> <td >8 янв 2016</td> <td >22 янв 2016</td> <td >3КВ 2015</td> <td >1,95 ₽</td> <td >3,21%</td> <td > 60,75 ₽ </td> </tr> <tr > <td > </td> <td >8 окт 2015</td> <td >12 окт 2015</td> <td >26 окт 2015</td> <td >2КВ 2015</td> <td >0,93 ₽</td> <td >1,28%</td> <td > 72,75 ₽ </td> </tr> <tr > <td > </td> <td >11 июн 2015</td> <td >16 июн 2015</td> <td >30 июн 2015</td> <td >2П 2014</td> <td >1,56 ₽</td> <td >2,14%</td> <td > 72,8 ₽ </td> </tr> <tr > <td > </td> <td >11 июн 2015</td> <td >16 июн 2015</td> <td >30 июн 2015</td> <td >1КВ 2015</td> <td >1,64 ₽</td> <td >2,25%</td> <td > 72,8 ₽ </td> </tr> <tr > <td > </td> <td >8 окт 2014</td> <td >11 окт 2014</td> <td >24 окт 2014</td> <td >1П 2014</td> <td >0,88 ₽</td> <td >1,61%</td> <td > 54,65 ₽ </td> </tr> <tr > <td > </td> <td >11 июн 2014</td> <td >17 июн 2014</td> <td >1 июл 2014</td> <td >2013</td> <td >0,67 ₽</td> <td >1,39%</td> <td > 48,33 ₽ </td> </tr> <tr > <td > </td> <td >24 апр 2013</td> <td >24 апр 2013</td> <td >8 мая 2013</td> <td >2012</td> <td >0,62 ₽</td> <td >1,15%</td> <td > 53,91 ₽ </td> </tr> <tr > <td > </td> <td >10 апр 2012</td> <td >10 апр 2012</td> <td >24 апр 2012</td> <td >2П 2011</td> <td >0,60 ₽</td> <td >0,99%</td> <td > 60,61 ₽ </td> </tr> <tr > <td > </td> <td >15 авг 2011</td> <td >15 авг 2011</td> <td >29 авг 2011</td> <td >1П 2011</td> <td >1,40 ₽</td> <td >1,67%</td> <td > 83,98 ₽ </td> </tr> <tr > <td > </td> <td >17 апр 2011</td> <td >17 апр 2011</td> <td >29 апр 2011</td> <td >2П 2010</td> <td >1,20 ₽</td> <td >1,07%</td> <td > 111,89 ₽ </td> </tr> <tr > <td > </td> <td >25 авг 2010</td> <td >25 авг 2010</td> <td >8 сен 2010</td> <td >1П 2010</td> <td >0,62 ₽</td> <td >0,71%</td> <td > 87,35 ₽ </td> </tr> <tr > <td > </td> <td >16 апр 2010</td> <td >16 апр 2010</td> <td >30 апр 2010</td> <td >2009</td> <td >0,22 ₽</td> <td >0,2%</td> <td > 110,79 ₽ </td> </tr> <tr > <td > </td> <td >1 авг 2008</td> <td >1 авг 2008</td> <td >15 авг 2008</td> <td >1П 2008</td> <td >2,00 ₽</td> <td >1,91%</td> <td > 104,53 ₽ </td> </tr> <tr > <td > </td> <td >18 апр 2008</td> <td >18 апр 2008</td> <td >2 мая 2008</td> <td >2П 2007</td> <td >1,5 ₽</td> <td >1,32%</td> <td > 114 ₽ </td> </tr> </tbody> </table>'; $subst = "$1"; $result = preg_replace($re, $subst, $str); echo "The result of the substitution is ".$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 PHP, please visit: http://php.net/manual/en/ref.pcre.php