Обработка естественного языка на коленке, как научится выдергивать из текста город, улицу, район?
Ваша задача называется Named-entity recognition. Существует ряд библиотек, которые решают эту задачу (spacy, NLTK). Большинство решений приведены для английского языка. Но, я думаю, есть примеры и для русского.
Проще воспользоваться уже готовыми сервисами типа https://dadata.ru/
Если же хотите именно сами все сделать, то надо составить базу всех городов, их синонимов, сокращений (Санкт-Петербург, Питер, СПб и т.д.) и перебирать. Потом добавить неточный поиск и исправление ошибок.
Можно как "на коленке", а можно "по уму" (раз уж поставлен тег "нейросети").