Нужно регулярное выражение для ирландского номера телефона - PullRequest
3 голосов
/ 02 июня 2010

Мне нужно подтвердить ирландский телефонный номер, но я не хочу, чтобы он был слишком недружественным для пользователя, многие люди пишут на нем телефонные номера в скобках с кодом города, за которыми следуют от 5 до 7 цифр, некоторые добавить пробелы между кодом города или оператором мобильной связи.

Формат ирландских телефонных номеров - это код города от 1 до 4 цифр и от 5 до 8 цифр.

, например

(021) 9876543  
(01)9876543  
01 9876543  
(0402)39385

Я ищу регулярное выражение для Javascript / PHP.

Ответы [ 4 ]

2 голосов
/ 16 октября 2011

Возможно, стоит взглянуть на класс Validate_IE - он содержит функцию phoneNumber, которая обрабатывает различные возможные ирландские телефонные номера (с / без зоны) коды, номера мобильных телефонов, мобильные номера и т. д.).

Кроме того, если вы работаете с ирландскими данными, у него есть ряд дополнительных методов, которые могут однажды пригодиться для проверки всего: от ирландских банковских счетов до номеров водительских прав, которые стоит посмотреть!

1 голос
/ 02 июня 2010

Это может сработать. Он должен учитывать появление пробелов в любом месте номера телефона.

preg_match('|^\s*\(?\s*\d{1,4}\s*\)?\s*[\d\s]{5,10}\s*$|', $phone);

Люди иногда разделяют телефонный номер на две части пробелами.

Обновление: Если вы хотите проверить номер телефона и пробелы одновременно, вы можете сделать это следующим образом:

if (preg_match('|^\s*(\(?\s*\d{1,4}\s*\)?\s*[\d\s]{5,10})\s*$|', $phone, $m))
{
    echo $m[1];
}
1 голос
/ 02 июня 2010

Если бы это был я, я бы убрал пробелы и скобки, а затем проверил, что это минимальная и максимальная длина.

1 голос
/ 02 июня 2010

Попробуйте это:

http://regexlib.com/REDetails.aspx?regexp_id=2485

Модифицированная версия без кода города:

\d{3}\s\d{4}
...