Regular Expressions 101

Save & Share

  • Regex Version: ver. 1
  • 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
No Match

/
/
g

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 = "[0-9\\-\\,]"; final String string = "country latitude longitude name\n" + "AD 42.546245 1.601554 Andorra\n" + "AE 23.424076 53.847818 United Arab Emirates\n" + "AF 33.93911 67.709953 Afghanistan\n" + "AG 17.060816 -61.796428 Antigua and Barbuda\n" + "AI 18.220554 -63.068615 Anguilla\n" + "AL 41.153332 20.168331 Albania\n" + "AM 40.069099 45.038189 Armenia\n" + "AN 12.226079 -69.060087 Netherlands Antilles\n" + "AO -11.202692 17.873887 Angola\n" + "AQ -75.250973 -0.071389 Antarctica\n" + "AR -38.416097 -63.616672 Argentina\n" + "AS -14.270972 -170.132217 American Samoa\n" + "AT 47.516231 14.550072 Austria\n" + "AU -25.274398 133.775136 Australia\n" + "AW 12.52111 -69.968338 Aruba\n" + "AZ 40.143105 47.576927 Azerbaijan\n" + "BA 43.915886 17.679076 Bosnia and Herzegovina\n" + "BB 13.193887 -59.543198 Barbados\n" + "BD 23.684994 90.356331 Bangladesh\n" + "BE 50.503887 4.469936 Belgium\n" + "BF 12.238333 -1.561593 Burkina Faso\n" + "BG 42.733883 25.48583 Bulgaria\n" + "BH 25.930414 50.637772 Bahrain\n" + "BI -3.373056 29.918886 Burundi\n" + "BJ 9.30769 2.315834 Benin\n" + "BM 32.321384 -64.75737 Bermuda\n" + "BN 4.535277 114.727669 Brunei\n" + "BO -16.290154 -63.588653 Bolivia\n" + "BR -14.235004 -51.92528 Brazil\n" + "BS 25.03428 -77.39628 Bahamas\n" + "BT 27.514162 90.433601 Bhutan\n" + "BV -54.423199 3.413194 Bouvet Island\n" + "BW -22.328474 24.684866 Botswana\n" + "BY 53.709807 27.953389 Belarus\n" + "BZ 17.189877 -88.49765 Belize\n" + "CA 56.130366 -106.346771 Canada\n" + "CC -12.164165 96.870956 Cocos [Keeling] Islands\n" + "CD -4.038333 21.758664 Congo [DRC]\n" + "CF 6.611111 20.939444 Central African Republic\n" + "CG -0.228021 15.827659 Congo [Republic]\n" + "CH 46.818188 8.227512 Switzerland\n" + "CI 7.539989 -5.54708 Côte d'Ivoire\n" + "CK -21.236736 -159.777671 Cook Islands\n" + "CL -35.675147 -71.542969 Chile\n" + "CM 7.369722 12.354722 Cameroon\n" + "CN 35.86166 104.195397 China\n" + "CO 4.570868 -74.297333 Colombia\n" + "CR 9.748917 -83.753428 Costa Rica\n" + "CU 21.521757 -77.781167 Cuba\n" + "CV 16.002082 -24.013197 Cape Verde\n" + "CX -10.447525 105.690449 Christmas Island\n" + "CY 35.126413 33.429859 Cyprus\n" + "CZ 49.817492 15.472962 Czech Republic\n" + "DE 51.165691 10.451526 Germany\n" + "DJ 11.825138 42.590275 Djibouti\n" + "DK 56.26392 9.501785 Denmark\n" + "DM 15.414999 -61.370976 Dominica\n" + "DO 18.735693 -70.162651 Dominican Republic\n" + "DZ 28.033886 1.659626 Algeria\n" + "EC -1.831239 -78.183406 Ecuador\n" + "EE 58.595272 25.013607 Estonia\n" + "EG 26.820553 30.802498 Egypt\n" + "EH 24.215527 -12.885834 Western Sahara\n" + "ER 15.179384 39.782334 Eritrea\n" + "ES 40.463667 -3.74922 Spain\n" + "ET 9.145 40.489673 Ethiopia\n" + "FI 61.92411 25.748151 Finland\n" + "FJ -16.578193 179.414413 Fiji\n" + "FK -51.796253 -59.523613 Falkland Islands [Islas Malvinas]\n" + "FM 7.425554 150.550812 Micronesia\n" + "FO 61.892635 -6.911806 Faroe Islands\n" + "FR 46.227638 2.213749 France\n" + "GA -0.803689 11.609444 Gabon\n" + "GB 55.378051 -3.435973 United Kingdom\n" + "GD 12.262776 -61.604171 Grenada\n" + "GE 42.315407 43.356892 Georgia\n" + "GF 3.933889 -53.125782 French Guiana\n" + "GG 49.465691 -2.585278 Guernsey\n" + "GH 7.946527 -1.023194 Ghana\n" + "GI 36.137741 -5.345374 Gibraltar\n" + "GL 71.706936 -42.604303 Greenland\n" + "GM 13.443182 -15.310139 Gambia\n" + "GN 9.945587 -9.696645 Guinea\n" + "GP 16.995971 -62.067641 Guadeloupe\n" + "GQ 1.650801 10.267895 Equatorial Guinea\n" + "GR 39.074208 21.824312 Greece\n" + "GS -54.429579 -36.587909 South Georgia and the South Sandwich Islands\n" + "GT 15.783471 -90.230759 Guatemala\n" + "GU 13.444304 144.793731 Guam\n" + "GW 11.803749 -15.180413 Guinea-Bissau\n" + "GY 4.860416 -58.93018 Guyana\n" + "GZ 31.354676 34.308825 Gaza Strip\n" + "HK 22.396428 114.109497 Hong Kong\n" + "HM -53.08181 73.504158 Heard Island and McDonald Islands\n" + "HN 15.199999 -86.241905 Honduras\n" + "HR 45.1 15.2 Croatia\n" + "HT 18.971187 -72.285215 Haiti\n" + "HU 47.162494 19.503304 Hungary\n" + "ID -0.789275 113.921327 Indonesia\n" + "IE 53.41291 -8.24389 Ireland\n" + "IL 31.046051 34.851612 Israel\n" + "IM 54.236107 -4.548056 Isle of Man\n" + "IN 20.593684 78.96288 India\n" + "IO -6.343194 71.876519 British Indian Ocean Territory\n" + "IQ 33.223191 43.679291 Iraq\n" + "IR 32.427908 53.688046 Iran\n" + "IS 64.963051 -19.020835 Iceland\n" + "IT 41.87194 12.56738 Italy\n" + "JE 49.214439 -2.13125 Jersey\n" + "JM 18.109581 -77.297508 Jamaica\n" + "JO 30.585164 36.238414 Jordan\n" + "JP 36.204824 138.252924 Japan\n" + "KE -0.023559 37.906193 Kenya\n" + "KG 41.20438 74.766098 Kyrgyzstan\n" + "KH 12.565679 104.990963 Cambodia\n" + "KI -3.370417 -168.734039 Kiribati\n" + "KM -11.875001 43.872219 Comoros\n" + "KN 17.357822 -62.782998 Saint Kitts and Nevis\n" + "KP 40.339852 127.510093 North Korea\n" + "KR 35.907757 127.766922 South Korea\n" + "KW 29.31166 47.481766 Kuwait\n" + "KY 19.513469 -80.566956 Cayman Islands\n" + "KZ 48.019573 66.923684 Kazakhstan\n" + "LA 19.85627 102.495496 Laos\n" + "LB 33.854721 35.862285 Lebanon\n" + "LC 13.909444 -60.978893 Saint Lucia\n" + "LI 47.166 9.555373 Liechtenstein\n" + "LK 7.873054 80.771797 Sri Lanka\n" + "LR 6.428055 -9.429499 Liberia\n" + "LS -29.609988 28.233608 Lesotho\n" + "LT 55.169438 23.881275 Lithuania\n" + "LU 49.815273 6.129583 Luxembourg\n" + "LV 56.879635 24.603189 Latvia\n" + "LY 26.3351 17.228331 Libya\n" + "MA 31.791702 -7.09262 Morocco\n" + "MC 43.750298 7.412841 Monaco\n" + "MD 47.411631 28.369885 Moldova\n" + "ME 42.708678 19.37439 Montenegro\n" + "MG -18.766947 46.869107 Madagascar\n" + "MH 7.131474 171.184478 Marshall Islands\n" + "MK 41.608635 21.745275 Macedonia [FYROM]\n" + "ML 17.570692 -3.996166 Mali\n" + "MM 21.913965 95.956223 Myanmar [Burma]\n" + "MN 46.862496 103.846656 Mongolia\n" + "MO 22.198745 113.543873 Macau\n" + "MP 17.33083 145.38469 Northern Mariana Islands\n" + "MQ 14.641528 -61.024174 Martinique\n" + "MR 21.00789 -10.940835 Mauritania\n" + "MS 16.742498 -62.187366 Montserrat\n" + "MT 35.937496 14.375416 Malta\n" + "MU -20.348404 57.552152 Mauritius\n" + "MV 3.202778 73.22068 Maldives\n" + "MW -13.254308 34.301525 Malawi\n" + "MX 23.634501 -102.552784 Mexico\n" + "MY 4.210484 101.975766 Malaysia\n" + "MZ -18.665695 35.529562 Mozambique\n" + "NA -22.95764 18.49041 Namibia\n" + "NC -20.904305 165.618042 New Caledonia\n" + "NE 17.607789 8.081666 Niger\n" + "NF -29.040835 167.954712 Norfolk Island\n" + "NG 9.081999 8.675277 Nigeria\n" + "NI 12.865416 -85.207229 Nicaragua\n" + "NL 52.132633 5.291266 Netherlands\n" + "NO 60.472024 8.468946 Norway\n" + "NP 28.394857 84.124008 Nepal\n" + "NR -0.522778 166.931503 Nauru\n" + "NU -19.054445 -169.867233 Niue\n" + "NZ -40.900557 174.885971 New Zealand\n" + "OM 21.512583 55.923255 Oman\n" + "PA 8.537981 -80.782127 Panama\n" + "PE -9.189967 -75.015152 Peru\n" + "PF -17.679742 -149.406843 French Polynesia\n" + "PG -6.314993 143.95555 Papua New Guinea\n" + "PH 12.879721 121.774017 Philippines\n" + "PK 30.375321 69.345116 Pakistan\n" + "PL 51.919438 19.145136 Poland\n" + "PM 46.941936 -56.27111 Saint Pierre and Miquelon\n" + "PN -24.703615 -127.439308 Pitcairn Islands\n" + "PR 18.220833 -66.590149 Puerto Rico\n" + "PS 31.952162 35.233154 Palestinian Territories\n" + "PT 39.399872 -8.224454 Portugal\n" + "PW 7.51498 134.58252 Palau\n" + "PY -23.442503 -58.443832 Paraguay\n" + "QA 25.354826 51.183884 Qatar\n" + "RE -21.115141 55.536384 Réunion\n" + "RO 45.943161 24.96676 Romania\n" + "RS 44.016521 21.005859 Serbia\n" + "RU 61.52401 105.318756 Russia\n" + "RW -1.940278 29.873888 Rwanda\n" + "SA 23.885942 45.079162 Saudi Arabia\n" + "SB -9.64571 160.156194 Solomon Islands\n" + "SC -4.679574 55.491977 Seychelles\n" + "SD 12.862807 30.217636 Sudan\n" + "SE 60.128161 18.643501 Sweden\n" + "SG 1.352083 103.819836 Singapore\n" + "SH -24.143474 -10.030696 Saint Helena\n" + "SI 46.151241 14.995463 Slovenia\n" + "SJ 77.553604 23.670272 Svalbard and Jan Mayen\n" + "SK 48.669026 19.699024 Slovakia\n" + "SL 8.460555 -11.779889 Sierra Leone\n" + "SM 43.94236 12.457777 San Marino\n" + "SN 14.497401 -14.452362 Senegal\n" + "SO 5.152149 46.199616 Somalia\n" + "SR 3.919305 -56.027783 Suriname\n" + "ST 0.18636 6.613081 São Tomé and Príncipe\n" + "SV 13.794185 -88.89653 El Salvador\n" + "SY 34.802075 38.996815 Syria\n" + "SZ -26.522503 31.465866 Swaziland\n" + "TC 21.694025 -71.797928 Turks and Caicos Islands\n" + "TD 15.454166 18.732207 Chad\n" + "TF -49.280366 69.348557 French Southern Territories\n" + "TG 8.619543 0.824782 Togo\n" + "TH 15.870032 100.992541 Thailand\n" + "TJ 38.861034 71.276093 Tajikistan\n" + "TK -8.967363 -171.855881 Tokelau\n" + "TL -8.874217 125.727539 Timor-Leste\n" + "TM 38.969719 59.556278 Turkmenistan\n" + "TN 33.886917 9.537499 Tunisia\n" + "TO -21.178986 -175.198242 Tonga\n" + "TR 38.963745 35.243322 Turkey\n" + "TT 10.691803 -61.222503 Trinidad and Tobago\n" + "TV -7.109535 177.64933 Tuvalu\n" + "TW 23.69781 120.960515 Taiwan\n" + "TZ -6.369028 34.888822 Tanzania\n" + "UA 48.379433 31.16558 Ukraine\n" + "UG 1.373333 32.290275 Uganda\n" + "UM U.S. Minor Outlying Islands\n" + "US 37.09024 -95.712891 United States\n" + "UY -32.522779 -55.765835 Uruguay\n" + "UZ 41.377491 64.585262 Uzbekistan\n" + "VA 41.902916 12.453389 Vatican City\n" + "VC 12.984305 -61.287228 Saint Vincent and the Grenadines\n" + "VE 6.42375 -66.58973 Venezuela\n" + "VG 18.420695 -64.639968 British Virgin Islands\n" + "VI 18.335765 -64.896335 U.S. Virgin Islands\n" + "VN 14.058324 108.277199 Vietnam\n" + "VU -15.376706 166.959158 Vanuatu\n" + "WF -13.768752 -177.156097 Wallis and Futuna\n" + "WS -13.759029 -172.104629 Samoa\n" + "XK 42.602636 20.902977 Kosovo\n" + "YE 15.552727 48.516388 Yemen\n" + "YT -12.8275 45.166244 Mayotte\n" + "ZA -30.559482 22.937506 South Africa\n" + "ZM -13.133897 27.849332 Zambia\n" + "ZW -19.015438 29.154857 Zimbabwe"; final Pattern pattern = Pattern.compile(regex); 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