Есть ли псевдокод для проверки адреса или номера телефона в Великобритании? - PullRequest
6 голосов
/ 10 ноября 2008

У вас есть псевдокод для проверки полей следующих предметов в Великобритании? Я из США, поэтому я знаю только те, что в США.

  • Адресная строка 1
  • Номер телефона
  • Номер мобильного телефона (если у них есть для этого специальное правило, которого у них нет)
  • Почтовый индекс

Ответы [ 6 ]

5 голосов
/ 10 ноября 2008

Адресная строка 1, если вы хотите проверить, что пользователь ввел в произвольной форме, вы, вероятно, скрыты. Там огромная изменчивость. Вы можете использовать адресный файл PostCode (см. Ниже), чтобы помочь,

Как правило, если вам нужен «стандартный» адрес, сайты, ориентированные на Великобританию, запрашивают почтовый индекс, а затем предлагают пользователю выбрать правильный адрес из всех адресов с этим почтовым индексом

Телефоны и мобильные номера. См. Здесь http://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom. Сценарий для проверки этих (на нескольких языках) можно найти здесь: http://www.braemoor.co.uk/software/telnumbers.shtml

Формат почтового индекса: http://en.wikipedia.org/wiki/UK_postcodes (содержит регулярное выражение для проверки и ссылается на файл адресов почтового индекса, в котором перечислены действительные адреса)

4 голосов
/ 10 ноября 2008

Адресная строка 1 может быть практически любой. Не всегда есть номера домов.

Номера телефонов: длина кода города варьируется. Я не хотел бы поклясться, является ли полная длина постоянной, но я подозреваю, что это всегда не менее 10 цифр. Мобильные номера обычно (IME) начинаются с 07, тогда как стационарные телефоны обычно начинаются с 01 или 02. Специальные номера (бесплатные, местный тариф и т. Д.) Обычно начинаются с 08. Я попытаюсь найти ссылку для этого. (РЕДАКТИРОВАТЬ: Опять же, есть хорошая статья в Википедии .)

В Википедии есть хорошая статья о британских почтовых индексах , включая регулярные выражения для них.

3 голосов
/ 10 ноября 2008

Perl имеет модуль Number :: Phone , который может обрабатывать телефонные номера Великобритании. Royal Mail имеет службы для проверки адреса и очистки списка.

1 голос
/ 10 ноября 2008

Как всегда с этим вопросом, не зацикливайтесь на чрезмерной проверке. Проверьте наиболее вероятные грубовато-искаженные входы и продолжайте. Попытка отследить, какие префиксы и длины номера телефона используются в каком-либо конкретном регионе, является огромной тратой вашего времени. Пропустить несколько, возможно, исправляемых ошибок лучше, чем потерять клиентов, сказав им, что они «недействительны».

(Ближайшим к стандартному формату адресации, который вы получаете в Великобритании, является почтовый индекс плюс номер дома. Даже в этом случае всегда есть исключения.)

1 голос
/ 10 ноября 2008

Для телефонных номеров в Великобритании, лучше всего (к сожалению), вероятно, загрузить планы нумерации с Ofcom (это таблицы Excel со всеми соответствующими диапазонами номеров, разбитые на коды городов, «географические номера», личные номера мобильные номера, разные сервисные номера, различные номера платных услуг, а также отображение номеров в диапазоне с оператором (последний, вероятно, НЕ тот, который вам нужен).

0 голосов
/ 03 сентября 2012

Я запустил код (или, по крайней мере, набор шаблонов RegEx) для проверки форм Django для телефонных номеров ГБ здесь .
С базовым объяснением здесь .

...