Лучшие шаблоны регулярных выражений для сопоставления телефонных номеров
Posted: Wed Jun 04, 2025 7:07 am
При работе с данными телефонных номеров в различных системах и форматах регулярные выражения (regex) становятся важным инструментом для проверки, нормализации и распознавания образов. Независимо от того, создаете ли вы валидатор форм, очищаете базу данных CRM или анализируете журналы, наличие правильного шаблона regex может сэкономить часы ручного труда и сократить количество ошибок. Одним из наиболее часто используемых шаблонов является общий североамериканский формат телефонных номеров:
это выражение охватывает широкий спектр распространенных форматов, таких как (123) 456-7890, 123-456-7890и 123.456.7890. Оно включает необязательные скобки вокруг кода города и необязательные разделители, такие как тире, точки или пробелы. Однако, хотя это хорошо работает для номеров США и Канады, оно не учитывает международные телефонные коды или форматы, специфичные для страны, которые часто требуют более гибких или целевых шаблонов.
Для работы с международными форматами разработчики Библиотека чисел Турции часто полагаются на более инклюзивные шаблоны регулярных выражений. Популярный из них:
Этот шаблон соответствует формату E.164, международному стандарту для телефонных номеров, который допускает до 15 цифр с необязательным начальным знаком плюс. Он особенно полезен при работе с глобальными приложениями, мобильными платформами или службами, которые стандартизируют телефонные номера в своем бэкэнде. Для более сложных потребностей, таких как разрешение форматирования для конкретной страны (например, Великобритания +44 7700 900123, Индия +91-9876543210), разработчики могут использовать комбинации нескольких шаблонов регулярных выражений или динамически генерировать их на основе региона пользователя. Другой универсальный шаблон для слабо отформатированных телефонных номеров:
Это выражение более щадящее, что делает его подходящим для анализа неструктурированных данных или журналов, где ввод пользователя может сильно различаться.
это выражение охватывает широкий спектр распространенных форматов, таких как (123) 456-7890, 123-456-7890и 123.456.7890. Оно включает необязательные скобки вокруг кода города и необязательные разделители, такие как тире, точки или пробелы. Однако, хотя это хорошо работает для номеров США и Канады, оно не учитывает международные телефонные коды или форматы, специфичные для страны, которые часто требуют более гибких или целевых шаблонов.
Для работы с международными форматами разработчики Библиотека чисел Турции часто полагаются на более инклюзивные шаблоны регулярных выражений. Популярный из них:
Этот шаблон соответствует формату E.164, международному стандарту для телефонных номеров, который допускает до 15 цифр с необязательным начальным знаком плюс. Он особенно полезен при работе с глобальными приложениями, мобильными платформами или службами, которые стандартизируют телефонные номера в своем бэкэнде. Для более сложных потребностей, таких как разрешение форматирования для конкретной страны (например, Великобритания +44 7700 900123, Индия +91-9876543210), разработчики могут использовать комбинации нескольких шаблонов регулярных выражений или динамически генерировать их на основе региона пользователя. Другой универсальный шаблон для слабо отформатированных телефонных номеров:
Это выражение более щадящее, что делает его подходящим для анализа неструктурированных данных или журналов, где ввод пользователя может сильно различаться.