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