Как проверить номер телефона Великобритании на C# с помощью регулярного выражения?Подтвердить номер телефона в Великобритании
ответ
Регулярное выражение в принятом ответе не соответствует всем действительным номерам в Великобритании, поскольку оно слишком ограничено (в то же время открыты дополнительные диапазоны номеров, такие как 0203, которые он считает недействительными).
UK телефонные номера следуют довольно простые правила:
Они могут быть либо 10 или 11 цифр длиной (за исключением некоторых специальных номеров, но вряд ли вы должны подтвердить те)
Они состоят из кода района, за которым следует местный номер. Код области изменяется в пределах от трех до пяти цифр, а местная часть номера занимает оставшуюся длину 10 или 11 цифр. Для всех практических целей никто никогда не цитирует только локальную часть своего номера, поэтому теперь вы можете игнорировать это различие, за исключением того, как это влияет на форматирование.
Они начинаются с нуля.
Вторая цифра может быть любой. В настоящее время действительные номера не начинаются с
04
или06
, но нет ничего, что остановило бы эти диапазоны, которые будут использоваться в будущем. (03
был недавно использован)Они могут быть отформатированы с помощью набора кронштейнов и с пробелами (один или несколько, в разных положениях), но все они полностью необязательны.
Таким образом, основное рабочее выражение для британских телефонных номеров может выглядеть следующим образом:
/^\(?0(*\d\)?){9,10}$/
Это будет проверять в течение 10 или 11 цифр числа, начиная с нуля, с форматирования пространства между любыми цифры и, возможно, набор скобок для кода области.
(и да, это позволило бы избежать совпадений в скобках, поскольку я не проверяю, что есть только одна закрывающая скобка. Принудительное выполнение этого сделает выражение намного сложнее, и у меня нет времени для этого права сейчас, но вы можете добавить это, если вы хотите)
Кстати, в случае, если вы хотите сделать дополнительную фильтрацию, вы можете также обратить внимание на следующие правила:
номера, начинающиеся
08
,09
и070
являются специальными номерами цен и обычно не указываются как частные номера , поэтому их можно исключить при проверке частного номера.07
номера являются мобильными (за исключением070
; см. Выше), поэтому их можно исключить, если вы специально проверяете стационарные линии.
- 1. Как подтвердить номер телефона
- 2. jQuery подтвердить номер телефона
- 3. PHP - Подтвердить номер телефона
- 4. Подтвердить номер мобильного телефона Ирландии
- 5. Подтвердить номер телефона, используя javascript
- 6. Не удается подтвердить номер телефона
- 7. RegExp для Великобритании номер телефона с +44 (0)
- 8. Как подтвердить номер телефона в ios
- 9. Как подтвердить номер телефона в этом формате
- 10. Подтвердить (австралийский) номер телефона в Javascript
- 11. Подтвердить номер сотового телефона в Южной Африке
- 12. Подтвердить номер телефона пользователя в CakePHP
- 13. Как подтвердить номер телефона определенного формата?
- 14. Подтвердить Номер мобильного телефона с кодом страны
- 15. Подтвердить поле на индийский номер мобильного телефона
- 16. Как подтвердить введенный номер мобильного телефона?
- 17. jquery подтвердить номер телефона и расширение
- 18. PHP: Как правильно подтвердить номер телефона?
- 19. jQuery Подтвердить плагин не работает на номер телефона
- 20. Как подтвердить только номер телефона телефона с помощью js
- 21. Номер телефона Великобритании Regex - без пробелов или скобок
- 22. Проверка номера телефона в Великобритании PHP
- 23. как подтвердить номер мобильного телефона в модели продавца в Django
- 24. tel: link для местного телефона Великобритании
- 25. Как подтвердить номер телефона в ASP Identity 2
- 26. Как подтвердить номер телефона в java, используя регулярное выражение
- 27. Подтвердить номер мобильного номера
- 28. Pebble номер телефона телефона
- 29. Номер телефона Подтверждение
- 30. Создать номер телефона regex
Наверху с этим ответом! – 2011-12-12 13:18:48