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

Substitution

Processing...

Code Generator

Generated Code

#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox Local $sRegex = "(?m)(([\wîïöôûüéèàç\/\-'\)\(ÎÉëÂÅ]|([[\wîïöôûüéèàç\/\-'\)\(ÎÉëÂÅ](\s|,\s|\s|\s:\s)[[\wîïöôûüéèàç\/\-'\)\(ÎÉëÂÅ]))*(\s*))([\w]{0,2})$" Local $sString = "Afghanistan AF" & @CRLF & _ "Afrique du Sud ZA" & @CRLF & _ "Åland, Îles AX" & @CRLF & _ "Albanie AL" & @CRLF & _ "Algérie DZ" & @CRLF & _ "Allemagne DE" & @CRLF & _ "Allemagne de l'EST DD" & @CRLF & _ "Andorre AD" & @CRLF & _ "Angola AO" & @CRLF & _ "Anguilla AI" & @CRLF & _ "Antarctique AQ" & @CRLF & _ "Antigua et Barbuda AG" & @CRLF & _ "Antilles néerlandaises AN" & @CRLF & _ "Arabie Saoudite SA" & @CRLF & _ "Argentine AR" & @CRLF & _ "Arménie AM" & @CRLF & _ "Aruba AW" & @CRLF & _ "Australie AU" & @CRLF & _ "Autriche AT" & @CRLF & _ "Azerbaïdjan AZ" & @CRLF & _ "Bahamas BS" & @CRLF & _ "Bahrein BH" & @CRLF & _ "Bangladesh BD" & @CRLF & _ "Barbade BB" & @CRLF & _ "Bélarus BY" & @CRLF & _ "Belgique BE" & @CRLF & _ "Bélize BZ" & @CRLF & _ "Bénin BJ" & @CRLF & _ "Bermudes BM" & @CRLF & _ "Bhoutan BT" & @CRLF & _ "Bolivie (État plurinational de) BO" & @CRLF & _ "Bonaire, Saint-Eustache et Saba BQ" & @CRLF & _ "Bosnie-Herzégovine BA" & @CRLF & _ "Botswana BW" & @CRLF & _ "Bouvet, Ile BV" & @CRLF & _ "Brésil BR" & @CRLF & _ "Brunéi Darussalam BN" & @CRLF & _ "Bulgarie BG" & @CRLF & _ "Burkina Faso BF" & @CRLF & _ "Burundi BI" & @CRLF & _ "Cabo Verde CV" & @CRLF & _ "Caïmans, Iles KY" & @CRLF & _ "Cambodge KH" & @CRLF & _ "Cameroun CM" & @CRLF & _ "Canada CA" & @CRLF & _ "Chili CL" & @CRLF & _ "Chine CN" & @CRLF & _ "Christmas, île CX" & @CRLF & _ "Chypre CY" & @CRLF & _ "Cocos/Keeling (Îles) CC" & @CRLF & _ "Colombie CO" & @CRLF & _ "Comores KM" & @CRLF & _ "Congo CG" & @CRLF & _ "Congo, République démocratique du CD" & @CRLF & _ "Cook, Iles CK" & @CRLF & _ "Corée, République de KR" & @CRLF & _ "Corée, République populaire démocratique de KP" & @CRLF & _ "Costa Rica CR" & @CRLF & _ "Côte d'Ivoire CI" & @CRLF & _ "Croatie HR" & @CRLF & _ "Cuba CU" & @CRLF & _ "Curaçao CW" & @CRLF & _ "Danemark DK" & @CRLF & _ "Djibouti DJ" & @CRLF & _ "Dominicaine, République DO" & @CRLF & _ "Dominique DM" & @CRLF & _ "Egypte EG" & @CRLF & _ "El Salvador SV" & @CRLF & _ "Emirats arabes unis AE" & @CRLF & _ "Equateur EC" & @CRLF & _ "Erythrée ER" & @CRLF & _ "Espagne ES" & @CRLF & _ "Estonie EE" & @CRLF & _ "Etats-Unis d'Amérique US" & @CRLF & _ "Ethiopie ET" & @CRLF & _ "Falkland/Malouines (Îles) FK" & @CRLF & _ "Féroé, îles FO" & @CRLF & _ "Fidji FJ" & @CRLF & _ "Finlande FI" & @CRLF & _ "France FR" & @CRLF & _ "Gabon GA" & @CRLF & _ "Gambie GM" & @CRLF & _ "Géorgie GE" & @CRLF & _ "Géorgie du sud et les îles Sandwich du sud GS" & @CRLF & _ "Ghana GH" & @CRLF & _ "Gibraltar GI" & @CRLF & _ "Grèce GR" & @CRLF & _ "Grenade GD" & @CRLF & _ "Groenland GL" & @CRLF & _ "Guadeloupe GP" & @CRLF & _ "Guam GU" & @CRLF & _ "Guatemala GT" & @CRLF & _ "Guernesey GG" & @CRLF & _ "Guinée GN" & @CRLF & _ "Guinée-Bissau GW" & @CRLF & _ "Guinée équatoriale GQ" & @CRLF & _ "Guyana GY" & @CRLF & _ "Guyane française GF" & @CRLF & _ "Haïti HT" & @CRLF & _ "Heard, Ile et MacDonald, îles HM" & @CRLF & _ "Honduras HN" & @CRLF & _ "Hong Kong HK" & @CRLF & _ "Hongrie HU" & @CRLF & _ "Île de Man IM" & @CRLF & _ "Îles mineures éloignées des Etats-Unis UM" & @CRLF & _ "Îles vierges britanniques VG" & @CRLF & _ "Îles vierges des Etats-Unis VI" & @CRLF & _ "Inde IN" & @CRLF & _ "Indien (Territoire britannique de l'océan) IO" & @CRLF & _ "Indonésie ID" & @CRLF & _ "Iran, République islamique d' IR" & @CRLF & _ "Iraq IQ" & @CRLF & _ "Irlande IE" & @CRLF & _ "Islande IS" & @CRLF & _ "Israël IL" & @CRLF & _ "Italie IT" & @CRLF & _ "Jamaïque JM" & @CRLF & _ "Japon JP" & @CRLF & _ "Jersey JE" & @CRLF & _ "Jordanie JO" & @CRLF & _ "Kazakhstan KZ" & @CRLF & _ "Kenya KE" & @CRLF & _ "Kirghizistan KG" & @CRLF & _ "Kiribati KI" & @CRLF & _ "Koweït KW" & @CRLF & _ "Lao, République démocratique populaire LA" & @CRLF & _ "Lesotho LS" & @CRLF & _ "Lettonie LV" & @CRLF & _ "Liban LB" & @CRLF & _ "Libéria LR" & @CRLF & _ "Libye LY" & @CRLF & _ "Liechtenstein LI" & @CRLF & _ "Lituanie LT" & @CRLF & _ "Luxembourg LU" & @CRLF & _ "Macao MO" & @CRLF & _ "Macédoine, l'ex-République yougoslave de MK" & @CRLF & _ "Madagascar MG" & @CRLF & _ "Malaisie MY" & @CRLF & _ "Malawi MW" & @CRLF & _ "Maldives MV" & @CRLF & _ "Mali ML" & @CRLF & _ "Malte MT" & @CRLF & _ "Mariannes du nord, Iles MP" & @CRLF & _ "Maroc MA" & @CRLF & _ "Marshall, Iles MH" & @CRLF & _ "Martinique MQ" & @CRLF & _ "Maurice MU" & @CRLF & _ "Mauritanie MR" & @CRLF & _ "Mayotte YT" & @CRLF & _ "Mexique MX" & @CRLF & _ "Micronésie, Etats Fédérés de FM" & @CRLF & _ "Moldova, République de MD" & @CRLF & _ "Monaco MC" & @CRLF & _ "Mongolie MN" & @CRLF & _ "Monténégro ME" & @CRLF & _ "Montserrat MS" & @CRLF & _ "Mozambique MZ" & @CRLF & _ "Myanmar MM" & @CRLF & _ "Namibie NA" & @CRLF & _ "Nauru NR" & @CRLF & _ "Népal NP" & @CRLF & _ "Nicaragua NI" & @CRLF & _ "Niger NE" & @CRLF & _ "Nigéria NG" & @CRLF & _ "Niue NU" & @CRLF & _ "Norfolk, Ile NF" & @CRLF & _ "Norvège NO" & @CRLF & _ "Nouvelle-Calédonie NC" & @CRLF & _ "Nouvelle-Zélande NZ" & @CRLF & _ "Oman OM" & @CRLF & _ "Ouganda UG" & @CRLF & _ "Ouzbékistan UZ" & @CRLF & _ "Pakistan PK" & @CRLF & _ "Palaos PW" & @CRLF & _ "Palestine, Etat de PS" & @CRLF & _ "Panama PA" & @CRLF & _ "Papouasie-Nouvelle-Guinée PG" & @CRLF & _ "Paraguay PY" & @CRLF & _ "Pays-Bas NL" & @CRLF & _ "Pays inconnu XX" & @CRLF & _ "Pays multiples ZZ" & @CRLF & _ "Pérou PE" & @CRLF & _ "Philippines PH" & @CRLF & _ "Pitcairn PN" & @CRLF & _ "Pologne PL" & @CRLF & _ "Polynésie française PF" & @CRLF & _ "Porto Rico PR" & @CRLF & _ "Portugal PT" & @CRLF & _ "Qatar QA" & @CRLF & _ "République arabe syrienne SY" & @CRLF & _ "République centrafricaine CF" & @CRLF & _ "Réunion RE" & @CRLF & _ "Roumanie RO" & @CRLF & _ "Royaume-Uni de Grande-Bretagne et d'Irlande du Nord GB" & @CRLF & _ "Russie, Fédération de RU" & @CRLF & _ "Rwanda RW" & @CRLF & _ "Sahara occidental EH" & @CRLF & _ "Saint-Barthélemy BL" & @CRLF & _ "Saint-Kitts-et-Nevis KN" & @CRLF & _ "Saint-Marin SM" & @CRLF & _ "Saint-Martin (partie française) MF" & @CRLF & _ "Saint-Martin (partie néerlandaise) SX" & @CRLF & _ "Saint-Pierre-et-Miquelon PM" & @CRLF & _ "Saint-Siège VA" & @CRLF & _ "Saint-Vincent-et-les-Grenadines VC" & @CRLF & _ "Sainte-Hélène, Ascension et Tristan da Cunha SH" & @CRLF & _ "Sainte-Lucie LC" & @CRLF & _ "Salomon, Iles SB" & @CRLF & _ "Samoa WS" & @CRLF & _ "Samoa américaines AS" & @CRLF & _ "Sao Tomé-et-Principe ST" & @CRLF & _ "Sénégal SN" & @CRLF & _ "Serbie RS" & @CRLF & _ "Seychelles SC" & @CRLF & _ "Sierra Leone SL" & @CRLF & _ "Singapour SG" & @CRLF & _ "Slovaquie SK" & @CRLF & _ "Slovénie SI" & @CRLF & _ "Somalie SO" & @CRLF & _ "Soudan SD" & @CRLF & _ "Soudan du Sud SS" & @CRLF & _ "Sri Lanka LK" & @CRLF & _ "Suède SE" & @CRLF & _ "Suisse CH" & @CRLF & _ "Suriname SR" & @CRLF & _ "Svalbard et île Jan Mayen SJ" & @CRLF & _ "Swaziland SZ" & @CRLF & _ "Tadjikistan TJ" & @CRLF & _ "Taïwan, Province de Chine TW" & @CRLF & _ "Tanzanie, République unie de TZ" & @CRLF & _ "Tchad TD" & @CRLF & _ "Tchécoslovaquie CS" & @CRLF & _ "Tchèque, République CZ" & @CRLF & _ "Terres australes françaises TF" & @CRLF & _ "Thaïlande TH" & @CRLF & _ "Timor-Leste TL" & @CRLF & _ "Togo TG" & @CRLF & _ "Tokelau TK" & @CRLF & _ "Tonga TO" & @CRLF & _ "Trinité-et-Tobago TT" & @CRLF & _ "Tunisie TN" & @CRLF & _ "Turkménistan TM" & @CRLF & _ "Turks-et-Caïcos (Îles) TC" & @CRLF & _ "Turquie TR" & @CRLF & _ "Tuvalu TV" & @CRLF & _ "Ukraine UA" & @CRLF & _ "URSS SU" & @CRLF & _ "Uruguay UY" & @CRLF & _ "Vanuatu VU" & @CRLF & _ "Vatican : voir Saint-Siège " & @CRLF & _ "Venezuela (République bolivarienne du) VE" & @CRLF & _ "Viet Nam VN" & @CRLF & _ "Viet Nam (Sud) VD" & @CRLF & _ "Wallis et Futuna WF" & @CRLF & _ "Yémen YE" & @CRLF & _ "Yougoslavie YU" & @CRLF & _ "Zaïre ZR" & @CRLF & _ "Zambie ZM" & @CRLF & _ "Zimbabwe ZW" Local $sSubst = "<row code="$6">\n <libelle>$6 - $1</libelle>\n</row>" 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