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

Code Generator

Generated Code

# coding=utf8 # the above tag defines encoding for this document and is for Python 2.x compatibility import re regex = r"\s\-\s([A-Z0-9]{6}\s{2}\d{2}|[A-Z0-9]{6}\d{4})" test_str = ("A V BROWNE ADVERTISING LTD ( 46 BEDFORD STREET BELFAST BT2 7GH GB) - 92305F 01\n\n" "ACS ADVANCED CUSTOMER SERVICE ARG S (1139 AVDA. FONDO DE LA LEGUA 1111 VILLA ADELINA 1607 AR) - 15870Z0101\n\n" "ACS ADVANCED CUSTOMER SERVICE ARG. (1139 AVDA. FONDO DE LA LEGUA 1111 VILLA ADELINA 1607 AR) - 15870Z 01\n\n" "ACSIS ADVANCED CONTR SYSTEMS INDUS ( BOULOGNE BILLANCOURT 92100 FR) - 79268K 01\n\n" "ADVAL ( ISSY LES MOULINEAUX 92130 FR) - 71751P 01\n\n" "ADVANCE AUTOMOBILE PTE LTD ( 281 - ALEXANDRA ROAD SINGAPORE 159938 SG) - 61423N 01\n\n" "ADVANCED CARE TECHNOLOGY INC ( 31 DUTCH MILL RD ITHACA 14850-9785 US) - 62199G 01\n\n" "ADVANCED CARRIER PRODUCTS ( MILLERS ROAD WARWICK CV34 5AN GB) - 80252E 01\n\n" "ADVANCED CARRIER PRODUCTS SARL ( Z D'ACTIVITE DE L ETOILE RETHEL CEDEX 08300 FR) - 81835A 01\n\n" "ADVANCED COMFORT SYSTEMS FRANCE (5-7 RUE DU MOULIN JACQUET BRESSUIRE CEDEX 79302 FR) - 13653P 01\n\n" "ADVANCED COMFORT SYSTEMS IBERICA SL (7 11 CALLE DA CORUNA ORENSE 32911 ES) - 25000Y 01\n\n" "ADVANCED CUSTOMER SERVICE FRANCE (31 CROIX DE BOIS BRAIN SUR L'AUTHION 49800 FR) - 28935A 01\n\n" "ADVANCED CUTTING TECHNOLOGY SA ( AVENIDA MESTRE MONTANER IGUALADA 08700 ES) - 08976F 02\n\n" "ADVANCED CUTTING TECHNOLOGY SA ( CR. NACIONAL II, KM. 551,800 ODENA 08711 ES) - 08976F 01\n\n" "ADVANCED ELASTOMER SYSTEMS ( COURBEVOIE 92400 FR) - 49134F 01\n\n" "ADVANCED ELASTOMER SYSTEMS ( C/O TRASTON LANE NEWPORT NP 90XF GB) - 49134F 02\n\n" "ADVANCED ELECTRONICS & LOGISTICS LT ( HIGH STREET TIPTON DY4 9HG GB) - A000AZ 01\n\n" "ADVANCED FRANCE COMPOSANTS (32 RUE PLANCHAT PARIS 75020 FR) - 51015A 01\n\n" "ADVANCED INDUSTRIAL SOLUTIONS (1 GROUPE MANOUKIAN ELANCOURT 78990 FR) - A000A7 01\n\n" "ADVANCED INFORMATION SYSTEMS ( NANCY CEDEX 54017 FR) - 60553T 02\n\n" "ADVANCED INFORMATION SYSTEMS ( 15 RUE REMY DUMONCEL PARIS 75014 FR) - 60553T 01\n\n" "ADVANCED LOGIC SYSTEM DESIGN (1BIS AVENUE FOCH ST MAUR DES FOSSES 94100 FR) - 76122R 01\n\n" "ADVANCED MANUFACTURING INTELLIGENCE (25 EATON ROAD COVENTRY CV1 2FJ GB) - 93231M 01\n\n" "ADVANCED MECHANICAL SYSTEM ( NANTES CEDEX 4 44185 FR) - 80801B 01\n\n" "ADVANCED METROLOGY SYSTEMS LTD ( 13 POMEROY DR, OADBY INDSTL LEICESTER LE2 5NE GB) - 64224H 01\n\n" "ADVANCED NEW TECHNOLOGY LTD ( PIPPINGFORD MANOR PIPPINGFOR UCKFIELD TN22 3HW GB) - 21050E 01\n\n" "ADVANCED PHOTONICS TECHNOLOGIES UK ( BOSTON HOUSE OXON OX12 9FF GB) - 25032H 01\n\n" "ADVANCED POWER TECHNOLOGY EUROPE ( PARC CLUB CADERA NORD B4 B MERIGNAC 33700 FR) - 48456U 01\n\n" "ADVANCED PRODUCTS FRANCE ( MONTESSON 78360 FR) - 37675A 01\n\n" "ADVANCED PRODUCTS NV (9 RUPELWEG BOOM 2850 BE) - 98815G 01\n\n" "ADVANCED PROSER, S.L. ( PRINCEP, 44 RUBI 08191 ES) - 09027L 01\n\n" "ADVANCED REALTIME TRACKING GMBH (6 AM OFERL WEILHEIM 82362 DE) - 29182U 01\n\n" "ADVANCED TECHNICAL SERVICES LTD ( UNIT 14, MAPLE BUSINESS PK BIRMINGHAM B7 5ET GB) - 90993E 01\n\n" "ADVANCED TECHNOLOGY SERVICES FRANCE ( 2 RUE GALVANI MASSY CEDEX 91301 FR) - 22969R 03\n\n" "ADVANCED TRANSLATION PROCESS PUBLIS ( NEUILLY SUR SEINE 92200 FR) - 36552E 01\n\n" "ADVANCED VISUAL SYSTEMS ( ESPACE CLICHY CLICHY CEDEX 92587 FR) - 71044W 01\n\n" "ADVANCED VISUAL SYSTEMS INC ( 300 5TH AVE WALTHAM 02451-8778 US) - 82650L 01\n\n" "ADVANCEFIRST TECHNOLOGIES LIMITED ( SHEPPERTON MARINA SHEPPERTON TW17 8NS GB) - 99364D 01\n\n" "ADVANCEMENT INTERNATIONAL LTD ( THE LIMES, 123 MORTLAKE HIGH LONDON SW14 8SN GB) - 90840N 01\n\n" "ADVANCY CONSULTING TEAM (171 AVENUE CHARLES DE GAULLE NEUILLY SUR SEINE 92200 FR) - 97574H 01\n\n" "ADVANTAGE CHEMICALS HOLDINGS LTD ( SPRING LANE SOUTH MALVERN WR14 1AT GB) - 91902T 01\n\n" "ADVANTAGE CHEMICALS LTD ( MEREBROOK BUSINESS PARK MALVERN WR13 6NP GB) - 99233L 01\n\n" "ADVANTAGE INTERNATIONAL ( 4611 HAWTHORNE LN NW WASHINGTON 20016-3437 US) - 54068U 01\n\n" "ADVANTAGES ( NANTERRE 92000 FR) - 78827F 01\n\n" "ADVANTEC, NEW TECHNOLOGY GMBH ( GUMMERSBACHER STR. 92 GUMMERSBACH 51643 DE) - 50911M 01\n\n" "ADVANTECH EUROPE BV (71B RUE DES HAUTES PATURES NANTERRE 92000 FR) - A003DR 01\n\n" "ADVANTECH FRANCE SA (71B RUE DES HAUTES PATURES NANTERRE 92000 FR) - 12001U 01\n\n" "ADVATEC TRANSPORT LTD (28 PINBUSH RD LOWERSTOFT NR33 7NL GB) - 27570S 01\n\n" "ADVENT (2 RUE JOBBE DUVAL PARIS 75015 FR) - A001MK 01\n\n" "ADVENT (44 RUE DURANTON PARIS 15 75015 FR) - 97622K 01\n\n" "ADVENTIA SAS ( NANTES 44000 FR) - 82851E 01\n\n" "ADVEO (33 AVENUE DU MAINE PARIS 75015 FR) - 20398W 01\n\n" "ADVEO ESPANA SA (28 AV. DE LOS ARTESANOS TRES CANTOS 28760 ES) - 09370J 01\n\n" "ADVERLINE (5 RUE DE LA TERRASSE PARIS 75017 FR) - 21061S 01\n\n" "ADVERTISING COM (25 RUE D'ARTOIS PARIS 75008 FR) - 99182F 01\n\n" "ADVERTISING COM INTERNATIONAL LTD ( 2ND FLOOR LONDON NW 8NQ GB) - 21456W 01\n\n" "ADVERTISING.COM LTD ( 3RD FLOOR LONDON NW8 8PL GB) - 96915S 01\n\n" "ADVISERS IN BUSINESS GROUP, S.A. ( PEDRO MUGURUZA, 6 MADRID 28036 ES) - 06306D 01\n\n" "ADVISERS IN BUSINESS GROUP, S.A. ( PENA SANTA 57 MADRID 28034 ES) - 06306D 02\n\n" "AFTABNET ADVERTISING AGENCY (23 AFRICA BLVD TEHERAN 15186 IR) - 27283E 01\n\n" "ALIRT ADVANCED TECHNOLOGY PRODUCTS (1881 YONGE STREET TORONTO M4S 3C6 CA) - 93373S 01\n\n" "ALLIED ADVANCED TEC si�ge ( 306 LAGUNA S�O PAULO 04728-001 BR) - 15250A0101\n\n" "ALLIED ADVANCED TECHNOLOGIES LTDA ( 306 LAGUNA S�O PAULO 04728-001 BR) - 15250A 01\n\n" "ALTAVIA (BEIJING) ADVERTISING CO LT (A6 GONGTI NORTH ROAD BEIJING 100027 CN) - A00389 01\n\n" "BEIJING AO NING TENG WEI ADV CO LTD (28 GUANG QU ROAD BEIJING 100124 CN) - A002X0 01\n\n" "BEIJING DDB NEEDHAM ADVERTISING CO. (27 DONGSANHUAN NORTH ROAD BEIJING 100020 CN) - A003CD 01\n\n" "BEIJING PROVISION ADVERSTISING CO L (53A 3 GUANGQU ROAD BEIJING 100124 CN) - A002K2 01\n\n" "BELDEN TOOLS INC (2500 BRAGA DRIVE BROADVIEW 60155 US) - 99839V 01\n\n" "BOLESHI (BEIJING) INTERNATIONAL ADV ( JIANGUO ROAD, CHAOYANG DISTR Beijing 100022 CN) - A002CT 01\n\n" "BRIGHTWAY VISION LTD ( ADVANCED TECHNOLOGY CENTER HAIFA 31905 IL) - A0018L 01\n\n" "BROADVISION (UK) LTD ( 100 LONGWATER AVENUE READING RG2 6GP GB) - 84075K 01\n\n" "BROADVISION FRANCE SA (27 AVENUE DE L'OPERA PARIS 75002 FR) - 82347G 01\n\n" "CADVISION (2 RUE GALILEE GUYANCOURT 78280 FR) - 25028D 01\n\n" "CCIP ADVANCIA ( JOUY EN JOSAS CEDEX 78351 FR) - 38930P 10\n\n" "CCIP ADVANCIA ( ADVANCIA PARIS 75015 FR) - 38930P 11\n\n" "CCIP ADVANCIA (7 R BALZAC PARIS 75008 FR) - 38930P 12\n\n" "CLEERE ADVANTAGE LTD ( AMBASSADOR WAY DEREHAM NR20 3TG GB) - 91957C 01\n\n" "COMPETITIVE ADVANTAGE FACTORY, S.A. ( PZ. PABLO RUIZ PICASSO, S/N. MADRID 28020 ES) - 83387M 01\n\n" "CONTACT ADVANTAGE LIMITED ( THE OLD MILL RENFREWSHIRE PA6 7AW GB) - 20527L 01\n\n" "COORSTEK ADVANCED MATERIALS FRANCE ( RUE DE L'INDUSTRIE EVREUX CEDEX 27025 FR) - 99186K 01\n\n" "COORSTEK ADVANCED MATERIALS FRANCE (1 RUE DE L'INDUSTRIE EVREUX CEDEX 27025 FR) - 99186K 02\n\n" "COORSTEK ADVANCED MATERIALS TURNOV ( ZA VIADUKTEM 2150 TURNOV 511 01 CZ) - 21251Y 01\n\n" "DIRECTORY ADVERTISING AGENCY (6 LLOYDS AVENUE HOUSE LONDON EC3N 3EH GB) - 91796C 01\n\n" "ELBIT SYSTEMS LTD ( ADVANCED TECHNOLOGY CENTER HAIFA 31053 IL) - A00168 01\n\n" "ELECTROVAC ADVANCED COMPOSITES META ( RAMPENGASSE 5 WIEN 1190 AT) - 35728J 01\n\n" "ERGO ADVANCED RESEARCH, SAU (474 C/ ALCAL� MADRID 28027 ES) - 09750X 01\n\n" "FLIR SYSTEM ADVANC THERM SOLUTIONS (19 BOULEVARD BIDAULT CROISSY BEAUBOURG 77183 FR) - 30142M 01\n\n" "FLIR SYSTEMS ADVANCED THERMAL SOLUT (19 BOULEVARD GEORGES BIDAULT CROISSY BEAUBOURG 77183 FR) - 75129L 01\n\n" "FROES, LUNA AND ADVOGADOS (131 AVENUE RIO BRANCO RIO DE JANEIRO 20040-006 BR) - 24898M 01\n\n" "GLOBAL MARKET BUSINESS ADVISERS SL ( GOBELAS, 21, 1� MADRID 28023 ES) - 24610Z 01\n\n" "GROUPM (SHANGHAI) ADVERTISING CO LT ( 31/F THE CENTER 989 SHANGHAI 200031 CN) - A002Q4 01\n\n" "HAVAS ADVERTISING HAVAS CCA INTER (2 ALLEE DE LONGCHAMP SURESNES 92150 FR) - 64964M0101\n\n" "HISPANOMOCION SA ( ADVA DE LA PAZ, 8 Y 10 MADRID 28027 ES) - 06570R 13\n\n" "HISPANOMOCION SA ( ADVA DE VELAZQUEZ, 83 MALAGA 28004 ES) - 06570R 15\n\n" "HUNSTMAN ADVANCED MATERIALS (EUROPE (45 EVERSLAAN EVERBERG 3078 BE) - 22402Z 01\n\n" "HUNTSMAN ADVANCED MATERIALS (200 KLYBECKSTRASSE BASEL 4002 CH) - 98601Z 01\n\n" "HUNTSMAN ADVANCED MATERIALS (45 EVERSLAAN EVERBERG 3078 BE) - 96079H 01\n\n" "HUNTSMAN ADVANCED MATERIALS FRANCE (107 AVENUE GEORGES CLEMENCEAU NANTERRE 92000 FR) - 81588G 01\n\n" "INTERACTIVE ADVERTISING BUREAU ( RUE DE LA BOETIE-104 PARIS 75008 FR) - A002AY 01\n\n" "JOHNSON CONTROLS - ADVANCED POWER S (3 RUE AMPERE NERSAC 16440 FR) - 24706D 01\n\n" "JOHNSON CONTROLS ADVANCED POWER SOL (51 AM LEINEUFER HANNOVER 30419 DE) - 27948C 01\n\n" "KTM ADVANCE (15 RUE JACQUES KABLE PARIS 75018 FR) - 53641E 01\n\n" "KYB ADVANCED MANUFACTURING SYSTEM (15 CALLE B LOS ARCOS 31210 ES) - 29077E 02\n\n" "KYB ADVANCED MANUFACTURING SYSTEM (6 ORORBIA OLTZA ZENDEA 31171 ES) - 29077E 01\n\n" "MCCANN-ERICKSON ADVERTISING LTD ( CASTLEFIELD HOUSE MANCHESTER M3 4SB GB) - 91197B 01\n\n" "MEDIA ADVERTISING SOLUTIONS LTD ( 5 WEST COURT MAIDSTONE ME15 6JD GB) - 91570G 01\n\n" "MORGAN ADVANCED CERAMICS LTD ( BEWDLEY ROAD STOURPORT-ON-SEVERN DY13 8QR GB) - 40330L 01\n\n" "MP ADVERTISING (159 AVENUE ACHILLE PERETTI NEUILLY SUR SEINE 92522 FR) - A00157 01\n\n" "NASCIMENTO ADVOGADOS. ( RUA TABAPUA 627 SAO PAULO 04533-012 BR) - 62330Z 01\n\n" "NEW ADVANCED TECHNOLOGY (28 AVENUE DE L EUROPE BUSSY SAINT GEORGES 77600 FR) - 22929X 01\n\n" "NILFISK ADVANCE (12A RUE DES HERONS ENTZHEIM 67960 FR) - 74164M 02\n\n" "NILFISK ADVANCE (26 AVENUE DE LA BALTIQUE COURTABOEUF CEDEX 91944 FR) - 74164M 01\n\n" "NILFISK ADVANCE (26 AVENUE DE LA BALTIQUE COURTABOEUF CEDEX 91978 FR) - 69166E 01\n\n" "OLMEC ADVANCED MATERIALS LTD (12 TERMINUS ROAD SHEFFIELD S7 2LH GB) - A000MV 01\n\n" "PARTNERS INTERNATIONAL ADVISERS ( PARIS 75008 FR) - 83354B 01\n\n" "PRICEWATERHOUSECOOPERS ADVISORY (63 RUE DE VILLIERS NEUILLY SUR SEINE 92200 FR) - 83019M 01\n\n" "PRICEWATERHOUSECOOPERS ADVISORY SAS (63 RUE DE VILLIERS NEUILLY SUR SEINE 92208 FR) - A001KA 01\n\n" "PUBLICADVISE SA ( PARIS 75006 FR) - 47676W 01\n\n" "PUBLICIS ADVERTISING CO (NO.208 ANFU RD., XUHUI DIST SHANGHAI 242031 CN) - 98935M 01\n\n" "PWC ADVISORY GIE (63 RUE DE VILLIERS NEUILLY SUR SEINE 92200 FR) - 61728V 01\n\n" "REXEL FRANCE ( RUE BADVILBEL MOULINS 03000 FR) - 99209K 03\n\n" "ROBERT BOSCH CORPOR ROBERT BOSCH (2800 S 25TH AVENUE BROADVIEW 60155-4594 US) - 94632K0301\n" "ROBERT BOSCH CORPOR ROBERT BOSCH (2800 S 25TH AVENUE BROADVIEW 60155-4594 US) - 94632K0201\n" "ROBERT BOSCH CORPOR ROBERT BOSCH CO (2800 S 25TH AVENUE BROADVIEW 60155-4594 US) - 94632K0101\n\n" "ROBERT BOSCH LLC (2800 S 25TH AVENUE BROADVIEW 60155-4594 US) - 94632K 01\n\n" "RTS ADVANCED ROBOTICS LTD ( DERWENT HO, CLARENCE AVE MANCHESTER M17 1QS GB) - 91501G 01\n\n" "SHANGHAI AUTOSPEARHEAD & ADV CO LTD (42 YONGHE ROAD SHANGHAI 200072 CN) - A0045R 01\n\n" "SHANGHAI MOER ADVERTISING CO LTD ( ROOM 1310 1313 SHANGHAI 200032 CN) - A002RN 01\n\n" "SHANGHAI YUANSU ADVERTISING CO LTD ( No. 6, ALLEY 460, PIN-LU ROA SHANGHAI 200072 CN) - A002W4 01\n\n" "SIGNES ADVANCED TECHNOLOGY ( SIGNES 83870 FR) - 81486W 01\n\n" "SOLUTIONS IMPRIMEES ( RUE DE BADVILBEL MOULINS 03000 FR) - 60708L 01\n\n" "TEAM ADVERTISING & MARKETING ( AL MOOSA TOWER DUBAI 14129 AE) - 58441X 01\n\n" "THE SQUARE ADVERTISING AGENSY (17 CAVENDISH SQUARE LONDON W1G 0PH GB) - 92817M 01\n\n" "TITAN OUTDOOR ADVERTISING LTD ( CHURCHILL HOUSE LIVERPOOL L2 2PJ GB) - 90458Y 01\n\n" "VISTEON ARDENNES INDUSTRIES ( ADVANCED POWERTRAIN ENGINEE TEXTILE ROAD YPSILANTI 10300 US) - 58805T 09\n\n" "WOLVERINE ADVANCED MATERIALS GMBH (20 VERRENBERGER WEG OHRINGEN 74613 DE) - 52040P 01\n\n" "WORLDCOM ADVANCED NETWORKS ( 1 REDCLIFFE ST BRISTOL BS99 1YN GB) - 89942M 01\n\n" "WORLDCOM ADVANCED NETWORKS ( CTRE ATRIA RUEIL 2000 RUEIL MALMAISON CEDEX 92566 FR) - 89942M 03\n\n" "WORLDCOM ADVANCED NETWORKS ( EUROPEAN PAYMENT CENTRE BOURNEMOUTH BH7 7YQ GB) - 89942M 02\n") matches = re.finditer(regex, test_str) for matchNum, match in enumerate(matches, start=1): print ("Match {matchNum} was found at {start}-{end}: {match}".format(matchNum = matchNum, start = match.start(), end = match.end(), match = match.group())) for groupNum in range(0, len(match.groups())): groupNum = groupNum + 1 print ("Group {groupNum} found at {start}-{end}: {group}".format(groupNum = groupNum, start = match.start(groupNum), end = match.end(groupNum), group = match.group(groupNum))) # Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and substitution.

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 Python, please visit: https://docs.python.org/3/library/re.html