Есть ли надежный / простой способ разбить адрес на компонент? Я бы
предпочитаю встраивать эту логику в мое приложение вместо того, чтобы
зависит от стороннего поставщика.
Нет. Вы всегда можете попробовать сделать это , но в конечном итоге это не удастся. Не существует универсального планетарного стандарта для адресов, и не каждая страна использует адреса на английском языке, что усложняет задачу. В США проживает 311 миллионов человек, а в мире около 7 миллиардов, и теперь подумайте о разных адресах, которые он может представлять.
В конце концов мне нужно будет добавить проверку адреса (с картой, но не в
веб-приложение). На этом этапе, что вы рекомендуете мне делать?
Я бы использовал Google Maps API V3, но, поскольку в вашем случае это противоречит правилам, я бы попробовал один из платных сервисов, доступных там для анализа / проверки адресов (есть даже бесплатные, но они менее надежны). Я думаю, что это лучшее, что ты можешь сделать.
В вашем случае единственный способ быть на 100% уверенным в том, что адрес существует и является действительным, - это проверить его вручную, а затем перейти туда физически;)