Простой текст произвольной формы.
Проверка всех мировых почтовых / почтовых индексов слишком сложна; фиксированный список стран слишком политически чувствителен; Обязательное административное деление штата / региона / другого района просто неуместно (слишком часто меня спрашивают, в каком округе я живу - когда нет, потому что Большой Лондон вовсе не округ).
Более того, это просто не нужно. Скорее всего, ваше приложение не будет серьезно моделировать адреса. Если вы хотите почтовый адрес, попросите почтовый адрес. Большинство людей не настолько глупы, чтобы вставлять что-то кроме почтового адреса, и если они это сделают, они могут поцеловать свой недавно приобретенный предмет до свидания.
Исключением является то, что вы делаете что-то, что в любом случае естественно ограничено одной страной. В этой ситуации вам следует попросить, скажем, пару {почтовый индекс, номер дома}, которой достаточно для идентификации почтового адреса. Я полагаю, что вы могли бы добиться аналогичных результатов с помощью расширенного почтового индекса в США.