Skip to content

Instantly share code, notes, and snippets.

@html
Created May 13, 2016 00:25
Show Gist options
  • Save html/4da3695f91ef0c50e731b56a48f30676 to your computer and use it in GitHub Desktop.
Save html/4da3695f91ef0c50e731b56a48f30676 to your computer and use it in GitHub Desktop.
All countries in English and Russian parsing
(defvar *countries* (list "Bangladesh" "Belgium" "Burkina Faso" "Bulgaria" "Bosnia and Herzegovina" "Brunei" "Bolivia" "Japan" "Burundi" "Benin" "Bhutan" "Jamaica" "Botswana" "Brazil" "The Bahamas" "Belarus" "Belize" "Russia" "Rwanda" "Republic of Serbia" "Lithuania" "Luxembourg" "Liberia" "Romania" "Guinea Bissau" "Guatemala" "Greece" "Equatorial Guinea" "Guyana" "Georgia" "United Kingdom" "Gabon" "Guinea" "Gambia" "Greenland" "Kuwait" "Ghana" "Oman" "Somaliland" "Western Sahara" "Kosovo" "Northern Cyprus" "Jordan" "Croatia" "Haiti" "Hungary" "Honduras" "Puerto Rico" "West Bank" "Portugal" "Paraguay" "Panama" "Papua New Guinea" "Peru" "Pakistan" "Philippines" "Poland" "Zambia" "Estonia" "Egypt" "South Africa" "Ecuador" "Albania" "Angola" "Kazakhstan" "Ethiopia" "Zimbabwe" "Spain" "Eritrea" "Montenegro" "Moldova" "Madagascar" "Morocco" "Uzbekistan" "Myanmar" "Mali" "Mongolia" "Macedonia" "Malawi" "Mauritania" "Uganda" "Malaysia" "Mexico" "Vanuatu" "France" "Finland" "Fiji" "Falkland Islands" "Nicaragua" "Netherlands" "Norway" "Namibia" "New Caledonia" "Niger" "Nigeria" "New Zealand" "Nepal" "Ivory Coast" "Switzerland" "Colombia" "China" "Cameroon" "Chile" "Canada" "Republic of the Congo" "Central African Republic" "Democratic Republic of the Congo" "Czech Republic" "Cyprus" "Costa Rica" "Cuba" "Swaziland" "Syria" "Kyrgyzstan" "Kenya" "South Sudan" "Suriname" "Cambodia" "El Salvador" "Slovakia" "South Korea" "Slovenia" "North Korea" "Somalia" "Senegal" "Sierra Leone" "Solomon Islands" "Saudi Arabia" "Sweden" "Sudan" "Dominican Republic" "Djibouti" "Denmark" "Germany" "Yemen" "Austria" "Algeria" "United States of America" "Latvia" "Uruguay" "Lebanon" "Laos" "Taiwan" "Trinidad and Tobago" "Turkey" "Sri Lanka" "Tunisia" "East Timor" "Turkmenistan" "Tajikistan" "Lesotho" "Thailand" "French Southern and Antarctic Lands" "Togo" "Chad" "Libya" "United Arab Emirates" "Venezuela" "Afghanistan" "Iraq" "Iceland" "Iran" "Armenia" "Italy" "Vietnam" "Argentina" "Australia" "Israel" "India" "Tanzania" "Azerbaijan" "Ireland" "Indonesia" "Ukraine" "Qatar" "Mozambique"))
(let ((str "Afghanistan Афганистан Afghanestan
Albania Албания Shqiperia
Algeria Алжир Al Jaza'ir
American Samoa Американское Самоа American Samoa
Andorra Андорра Andorra
Angola Ангола Angola
Anguilla Ангилья Anguilla
Antarctica Антарктида Antarctica
Antigua and Barbuda Антигуа и Барбуда Antigua and Barbuda
Argentina Аргентина Argentina
Armenia Армения Hayastan
Aruba Аруба Aruba
Australia Австралия Australia
Austria Австрия Österreich
Azerbaijan Азербайджан Azarbaycan
Bahamas Багамы Bahamas
Bahrain Бахрейн Al Bahrayn
Bangladesh Бангладеш Bangladesh
Barbados Барбадос Barbados
Belarus Белоруссия Byelarus
Belgium Бельгия Belgique/Belgie
Belize Белиз Belize
Benin Бенин Benin
Bermuda Бермуды Bermuda
Bhutan Бутан Bhutan
Bolivia Боливия Bolivia
Bosnia and Herzegovina Босния и Герцеговина Bosna i Hercegovina
Botswana Ботсвана Botswana
Brazil Бразилия Brasil
Brunei Darussalam Бруней Brunei
Bulgaria Болгария Bulgaria
Burkina Faso Буркина-Фасо Burkina Faso
Burundi Бурунди Burundi
Cambodia Камбоджа Kampuchea
Cameroon Камерун Cameroon
Canada Канада Canada
Cape Verde Кабо-Верде Cabo Verde
Cayman Islands Каймановы Острова Cayman Islands
Central African Republic Центрально-Африканская Республика Republique Centrafricaine
Chad Чад Tchad
Chile Чили Chile
China Китай Zhong Guo
Colombia Колумбия Colombia
Comoros Коморские острова Comores
Democratic Republic of the Congo (Kinshasa) Демократическая Республика Конго République Démocratique du Congo
Congo, Republic of (Brazzaville) Республика Конго République du Congo
Cook Islands Острова Кука Cook Islands
Costa Rica Коста-Рика Costa Rica
Cote d'Ivoire Кот-д'Ивуар Cote d'Ivoire
Croatia Хорватия Hrvatska
Cuba Куба Cuba
Cyprus Кипр Kibris, Kypros
Czech Republic Чехия Ceska Republika
Denmark Дания Danmark
Djibouti Джибути Djibouti
Dominica Доминика Dominica
Dominican Republic Доминиканская Республика Republica Dominicana
East Timor Timor-Leste Восточный Тимор Timor
Ecuador Эквадор Ecuador
Egypt Египет Misr
El Salvador Эль-Сальвадор El Salvador
Equatorial Guinea Экваториальная Гвинея Guinea Ecuatorial
Eritrea Эритрея Hagere Ertra
Estonia Эстония Eesti Vabariik
Ethiopia Эфиопия Ityop'iya
Falkland Islands Фолклендские острова Islas Malvinas
Faroe Islands Фарерские острова Foroyar
Fiji Фиджи Fiji
Finland Финляндия Suomen Tasavalta
France Франция France
French Guiana Французская Гвиана Guyane
French Polynesia Французская Полинезия Polynésie Française
Gabon Габон Gabon
Gambia Гамбия The Gambia
Georgia Грузия Sak'art'velo
Germany Германия Deutschland
Ghana Гана Ghana
Gibraltar Гибралтар Gibraltar
Greece Греция Ellas or Ellada
Greenland Гренландия Kalaallit Nunaat
Grenada Гренада Grenada
Guadeloupe Гваделупа Guadeloupe
Guam Гуам Guam
Guatemala Гватемала Guatemala
Guinea Гвинея Guinee
Guinea-Bissau Гвинея-Бисау Guine-Bissau
Guyana Гайана Guyana
Haiti Гаити Haiti
Honduras Гондурас Honduras
Hong Kong Гонконг Xianggang
Hungary Венгрия Magyarorszag
Iceland Исландия Lyoveldio Island
India Индия Bharat
Indonesia Индонезия Indonesia
Iran Иран Iran
Iraq Ирак Iraq
Ireland Ирландия Éire
Israel Израиль Yisra'el
Italy Италия Italia
Jamaica Ямайка Jamaica
Japan Япония Nippon, Nihon
Jordan Иордания Al Urdun
Kazakhstan Казахстан Qazaqstan
Kenya Кения Kenya
Kiribati Кирибати Kiribati, (Kiribas)
Korea, (North Korea) Корея, северная Choson
Korea, (South Korea) Корея, южная Han-guk
Kuwait Кувейт Al Kuwayt
Kyrgyzstan Киргизия Kyrgyz Respublikasy
Lao, People's Democratic Republic Лаос Lao
Latvia Латвия Latvija
Lebanon Ливан Lubnan
Lesotho Лесото Lesotho
Liberia Либерия Liberia
Libya Ливия Libiyah
Liechtenstein Лихтенштейн Liechtenstein
Lithuania Литва Lietuva
Luxembourg Люксембург Letzebuerg
Macao Макао Aomen
Macedonia, Rep. of Македония Makedonija
Madagascar Мадагаскар Madagascar
Malawi Малави Malawi
Malaysia Малайзия Malaysia
Maldives Мальдивы Dhivehi Raajje
Mali Мали Mali
Malta Мальта Malta
Marshall Islands Маршалловы Острова Marshall Islands
Martinique Мартиника Martinique
Mauritania Мавритания Muritaniyah
Mauritius Маврикий Mauritius
Mexico Мексика México
Micronesia, Federal States of Микронезии, Федеративные Штаты Micronesia
Moldova Молдавия Moldova
Monaco Монако Monaco
Mongolia Монголия Mongol Uls
Montenegro Черногория Crna Gora
Montserrat Монтсерат Montserrat
Morocco Марокко Al Maghrib
Mozambique Мозамбик Mocambique
Myanmar, Burma Мьянма Myanma
Namibia Намибия Namibia
Nauru Науру Nauru
Nepal Непал Nepal
Netherlands Нидерланды Nederland
Netherlands Antilles Нидерландские Антильские острова Nederlandse Antillen
New Caledonia Новая Каледония Nouvelle-Calédonie
New Zealand Новая Зеландия Aotearoa
Nicaragua Никарагуа Nicaragua
Niger Нигер Niger
Nigeria Нигерия Nigeria
Niue Ниуэ Niue
Northern Mariana Islands Северные Марианские острова Northern Mariana Islands
Norway Норвегия Norge
Oman Оман Saltanat Uman
Pakistan Пакистан Pakistan
Palau Палау Belau
Palestinian territory палестинской территории Filastin
Panama Панама Panama
Papua New Guinea Папуа — Новая Гвинея Papua Niu Gini
Paraguay Парагвай Paraguay
Peru Перу Peru
Philippines Филиппины Pilipinas
Poland Польша Polska
Portugal Португалия Portugal
Puerto Rico Пуэрто-Рико Puerto Rico
Qatar Катар Dawlat Qatar
Reunion Island Реюньон Ile de la Réunion
Romania Румыния Romania
Russian Federation Россия Rossiya
Rwanda Руанда Rwanda
Saint Kitts and Nevis Сент-Китс и Невис 1
Saint Lucia Сент-Люсия Saint Lucia
Saint Vincent and the Grenadines Сент-Винсент и Гренадины 2
Samoa Самоа Samoa
San Marino Сан-Марино San Marino
Sao Tome and Príncipe Сан-Томе и Принсипи Sao Tome e Principe
Saudi Arabia Саудовская Аравия Arabiyah as Suudiyah
Senegal Сенегал Senegal
Serbia Сербия Srbija
Seychelles Сейшельские острова Seychelles
Sierra Leone Сьерра-Леоне Sierra Leone
Singapore Сингапур Singapore
Slovakia Словакия Slovensko
Slovenia Словения Slovenija
Solomon Islands Соломоновы Острова Solomon Islands
Somalia Сомали Somalia
South Africa Южно-Африканская Республика (ЮАР) South Africa
Spain Испания España
Sri Lanka Шри-Ланка Sri Lanka
Sudan Судан As-Sudan
Suriname Суринам Suriname
Swaziland Свазиленд Swaziland
Sweden Швеция Sverige
Switzerland Швейцария Schweiz, Svizzera
Syria Сирия Suriyah
Taiwan Тайвань T'ai-wan
Tajikistan Таджикистан Tojikiston
Tanzania Танзания Tanzania
Thailand Таиланд Prathet Thai
Tibet Тибет Bod
Timor-Leste (East Timor) Восточный Тимор Timor
Togo Того Togo
Tokelau Токелау Tokelau
Tonga Тонга Tonga
Trinidad and Tobago Тринидад и Тобаго Trinidad, Tobago
Tunisia Тунис Tunis
Turkey Турция Turkiye
Turkmenistan Туркменистан Turkmenistan
Tuvalu Тувалу Tuvalu
Uganda Уганда Uganda
Ukraine Украина Ukrayina
United Arab Emirates Объединённые Арабские Эмираты (ОАЭ) Al Imarat al Arabiyah al Muttahidah
United Kingdom of Great Britain and Northern Ireland Соединённое Королевство Великобритании и Северной Ирландии United Kingdom
United States Соединённые Штаты Америки United States
Uruguay Уругвай Uruguay
Uzbekistan Узбекистан Uzbekiston
Vanuatu Вануату Vanuatu
Vatican City State Ватикан Vatican
Venezuela Венесуэла Venezuela
Vietnam Вьетнам Viet Nam
Virgin Islands (British) Британские Виргинские острова BVI British Virgin Islands
Virgin Islands (U.S.) Американские Виргинские острова Virgin Islands
Wallis and Futuna Islands Острова Уоллис и Футуна Wallis et Futuna
Western Sahara Западная Сахара 3
Yemen Йемен Al Yaman
Zambia Замбия Zambia
Zimbabwe Зимбабве Zimbabwe
"))
(flet ((trim (str)
(string-trim (list #\Newline #\Space #\Tab) str)))
(loop for i in (ppcre:split #\Newline str) collect
(let ((parts (ppcre:split #\Tab i)))
(unless (= (length parts) 3)
(setf parts (ppcre:split #\Space i))
(unless (= (length parts) 3)
(print parts)
(return))
(setf parts (mapcar #'trim parts)) )
(destructuring-bind(en ru other) parts
(cons en ru))
)
)))
(let ((countries-translations '(("Afghanistan" . "Афганистан") ("Albania" . "Албания") ("Algeria" . "Алжир")
("American Samoa" . " Американское Самоа") ("Andorra" . "Андорра")
("Angola" . "Ангола") ("Anguilla" . " Ангилья") ("Antarctica" . " Антарктида")
("Antigua and Barbuda" . "Антигуа и Барбуда") ("Argentina" . "Аргентина")
("Armenia" . "Армения") ("Aruba" . " Аруба") ("Australia" . "Австралия")
("Austria" . "Австрия") ("Azerbaijan" . "Азербайджан") ("The Bahamas" . "Багамы")
("Bahrain" . "Бахрейн") ("Bangladesh" . "Бангладеш") ("Barbados" . "Барбадос")
("Belarus" . "Белоруссия") ("Belgium" . "Бельгия") ("Belize" . "Белиз")
("Benin" . "Бенин") ("Bermuda" . " Бермуды") ("Bhutan" . "Бутан")
("Bolivia" . "Боливия") ("Bosnia and Herzegovina" . "Босния и Герцеговина")
("Botswana" . "Ботсвана") ("Brazil" . "Бразилия")
("Brunei" . "Бруней") ("Bulgaria" . "Болгария")
("Burkina Faso" . "Буркина-Фасо") ("Burundi" . "Бурунди")
("Cambodia" . " Камбоджа") ("Cameroon" . "Камерун") ("Canada" . " Канада")
("Cape Verde" . " Кабо-Верде") ("Cayman Islands" . " Каймановы Острова")
("Central African Republic" . " Центрально-Африканская Республика")
("Chad" . " Чад") ("Chile" . " Чили") ("China" . " Китай")
("Colombia" . " Колумбия") ("Comoros" . " Коморские острова")
("Democratic Republic of the Congo"
. "Демократическая Республика Конго")
("Republic of the Congo" . " Республика Конго")
("Cook Islands" . " Острова Кука") ("Costa Rica" . " Коста-Рика")
("Cote d'Ivoire" . " Кот-д'Ивуар") ("Croatia" . " Хорватия")
("Cuba" . " Куба") ("Cyprus" . " Кипр") ("Czech Republic" . " Чехия")
("Denmark" . " Дания") ("Djibouti" . " Джибути") ("Dominica" . " Доминика")
("Dominican Republic" . " Доминиканская Республика")
("East Timor Timor-Leste" . "Восточный Тимор") ("Ecuador" . " Эквадор")
("Egypt" . " Египет") ("El Salvador" . " Эль-Сальвадор")
("Equatorial Guinea" . " Экваториальная Гвинея") ("Eritrea" . " Эритрея")
("Estonia" . " Эстония") ("Ethiopia" . " Эфиопия")
("Falkland Islands" . " Фолклендские острова")
("Faroe Islands" . " Фарерские острова") ("Fiji" . " Фиджи")
("Finland" . " Финляндия") ("France" . " Франция")
("French Guiana" . " Французская Гвиана")
("French Polynesia" . "Французская Полинезия") ("Gabon" . " Габон")
("Gambia" . " Гамбия") ("Georgia" . " Грузия") ("Germany" . " Германия")
("Ghana" . " Гана") ("Gibraltar" . " Гибралтар") ("Greece" . "Греция")
("Greenland" . " Гренландия") ("Grenada" . "Гренада")
("Guadeloupe" . " Гваделупа") ("Guam" . "Гуам") ("Guatemala" . " Гватемала")
("Guinea" . " Гвинея") ("Guinea Bissau" . " Гвинея-Бисау")
("Guyana" . "Гайана") ("Haiti" . "Гаити") ("Honduras" . "Гондурас")
("Hong Kong" . " Гонконг") ("Hungary" . "Венгрия") ("Iceland" . " Исландия")
("India" . "Индия") ("Indonesia" . "Индонезия") ("Iran" . "Иран")
("Iraq" . "Ирак") ("Ireland" . "Ирландия") ("Israel" . "Израиль")
("Italy" . "Италия") ("Jamaica" . "Ямайка") ("Japan" . " Япония")
("Jordan" . "Иордания") ("Kazakhstan" . "Казахстан") ("Kenya" . "Кения")
("Kiribati" . " Кирибати") ("North Korea" . " Корея, северная")
("South Korea" . " Корея, южная") ("Kuwait" . " Кувейт")
("Kyrgyzstan" . " Киргизия") ("Laos" . " Лаос")
("Latvia" . "Латвия") ("Lebanon" . "Ливан") ("Lesotho" . "Лесото")
("Liberia" . "Либерия") ("Libya" . "Ливия") ("Liechtenstein" . "Лихтенштейн")
("Lithuania" . "Литва") ("Luxembourg" . "Люксембург") ("Macao" . "Макао")
("Macedonia" . " Македония") ("Madagascar" . "Мадагаскар")
("Malawi" . " Малави") ("Malaysia" . "Малайзия") ("Maldives" . " Мальдивы")
("Mali" . "Мали") ("Malta" . "Мальта")
("Marshall Islands" . "Маршалловы Острова") ("Martinique" . "Мартиника")
("Mauritania" . "Мавритания") ("Mauritius" . "Маврикий")
("Mexico" . "Мексика")
("Micronesia, Federal States of" . " Микронезии, Федеративные Штаты")
("Moldova" . "Молдавия") ("Monaco" . "Монако") ("Mongolia" . " Монголия")
("Montenegro" . "Черногория") ("Montserrat" . "Монтсерат")
("Morocco" . " Марокко") ("Mozambique" . "Мозамбик")
("Myanmar" . " Мьянма") ("Namibia" . "Намибия") ("Nauru" . "Науру")
("Nepal" . "Непал") ("Netherlands" . " Нидерланды")
("Netherlands Antilles" . " Нидерландские Антильские острова")
("New Caledonia" . " Новая Каледония") ("New Zealand" . " Новая Зеландия")
("Nicaragua" . "Никарагуа") ("Niger" . " Нигер") ("Nigeria" . "Нигерия")
("Niue" . "Ниуэ")
("Northern Mariana Islands" . " Северные Марианские острова")
("Norway" . "Норвегия") ("Oman" . " Оман") ("Pakistan" . " Пакистан")
("Palau" . "Палау") ("Palestinian territory" . " палестинской территории")
("Panama" . "Панама") ("Papua New Guinea" . " Папуа — Новая Гвинея")
("Paraguay" . "Парагвай") ("Peru" . "Перу") ("Philippines" . "Филиппины")
("Poland" . "Польша") ("Portugal" . "Португалия")
("Puerto Rico" . "Пуэрто-Рико") ("Qatar" . " Катар")
("Reunion Island" . " Реюньон") ("Romania" . "Румыния")
("Russia" . " Россия") ("Rwanda" . "Руанда")
("Saint Kitts and Nevis" . " Сент-Китс и Невис")
("Saint Lucia" . " Сент-Люсия")
("Saint Vincent and the Grenadines" . " Сент-Винсент и Гренадины")
("Samoa" . "Самоа") ("San Marino" . " Сан-Марино")
("Sao Tome and Príncipe" . " Сан-Томе и Принсипи")
("Saudi Arabia" . " Саудовская Аравия") ("Senegal" . "Сенегал")
("Republic of Serbia" . "Сербия") ("Seychelles" . " Сейшельские острова")
("Sierra Leone" . " Сьерра-Леоне") ("Singapore" . "Сингапур")
("Slovakia" . "Словакия") ("Slovenia" . "Словения")
("Solomon Islands" . " Соломоновы Острова") ("Somalia" . "Сомали")
("South Africa" . " Южно-Африканская Республика (ЮАР)") ("Spain" . "Испания")
("Sri Lanka" . "Шри-Ланка") ("Sudan" . " Судан") ("Suriname" . "Суринам")
("Swaziland" . " Свазиленд") ("Sweden" . " Швеция")
("Switzerland" . " Швейцария") ("Syria" . " Сирия") ("Taiwan" . " Тайвань")
("Tajikistan" . " Таджикистан") ("Tanzania" . "Танзания")
("Thailand" . " Таиланд") ("Tibet" . " Тибет")
("East Timor" . "Восточный Тимор") ("Togo" . " Того")
("Tokelau" . " Токелау") ("Tonga" . " Тонга")
("Trinidad and Tobago" . " Тринидад и Тобаго") ("Tunisia" . " Тунис")
("Turkey" . " Турция") ("Turkmenistan" . " Туркменистан")
("Tuvalu" . "Тувалу") ("Uganda" . "Уганда") ("Ukraine" . "Украина")
("United Arab Emirates" . "Объединённые Арабские Эмираты (ОАЭ)")
("United Kingdom"
. " Соединённое Королевство Великобритании и Северной Ирландии")
("United States of America" . " Соединённые Штаты Америки") ("Uruguay" . "Уругвай")
("Uzbekistan" . "Узбекистан") ("Vanuatu" . "Вануату")
("Vatican City State" . "Ватикан") ("Venezuela" . "Венесуэла")
("Vietnam" . " Вьетнам")
("Virgin Islands (British)" . "Британские Виргинские острова")
("Virgin Islands (U.S.)" . " Американские Виргинские острова")
("Wallis and Futuna Islands" . " Острова Уоллис и Футуна")
("Western Sahara" . " Западная Сахара") ("Yemen" . " Йемен")
("Zambia" . " Замбия") ("Zimbabwe" . "Зимбабве"))))
(print (loop for i in *countries*
collect
(if (assoc i countries-translations :test #'string=)
(cons i (string-trim (list #\Space) (cdr (assoc i countries-translations :test #'string=))))
(cons i i)))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment