В данном посте описан способ определения региона/области по названию города с помощью Яндекс карт. Бывают случаи когда необходимо определить не просто название региона, а получить именно его официальное административное обозначение. Как раз такая задача была поставлена мне. Работали с городами России. Погуглив, вычитал что API Яндекс карт выдает такую информацию.

При наборе названия города в поле input, ниже будет появляться название региона/области из Яндекс карт.

Для работы примера ниже, нужно подключить jQuery и сами Яндекс карты.

<!doctype html>
<html>
<head>
  <meta charset="utf-8">
  <title>Пример</title>  
</head>
<body>
  <input type="text">
  <p id="success"></p>
  <p id="error"></p>
  <script src="https://api-maps.yandex.ru/2.0-stable/?load=package.standard&lang=ru-RU" type="text/javascript"> </script>
  <script src="http://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha256-k2WSCIexGzOj3Euiig+TlR8gA0EmPjuc79OEeY5L45g=" crossorigin="anonymous"></script>
  <script>
    $('input').on('keyup input',function(){
      var myGeocoder = ymaps.geocode($(this).val());
      var region = '';
      myGeocoder.then(
        function (res) {
          region = res.geoObjects.get(0).properties.get('metaDataProperty.GeocoderMetaData.AddressDetails.Country.AdministrativeArea.AdministrativeAreaName');
          $('p#success').text(region);
          $('p#error').text('');
          },
          function (err) {
            $('p#success').text('');
            $('p#error').text(err);
          }
        );
    });  
  </script>
</body>
</html>

Наверняка есть способы и получше, и полегче. Но при решении такой задачи для себя, Я решил ее так :)

Поделись постом - это не сложно :)