Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.05.2014, 14:25
Новичок на форуме
Отправить личное сообщение для Alex_ya Посмотреть профиль Найти все сообщения от Alex_ya
 
Регистрация: 13.05.2014
Сообщений: 1

Регулярное выражение для валидации номеров Украины
Всем привет!

Есть необходимость проверить на валидность номера телефонов для Украины (мобильные + стационарные).

Использую вот эту регулярку:
/(?<!\w)(?:(?:(?:(?:\+?3)?8\W{0,5})?0\W{0,5})?[34569]\s?\d[^\w,;(\+]{0,5})?\d\W{0,5}\d\W{0,5}\d\W{0,5}\d\W{0,5}\d\W{0, 5}\d\W{0,5}\d(?!(\W?\d))/
(взято из хабры).

При выполнении вылазит ошибка:
Uncaught SyntaxError: Invalid regular expression: /(?>!\w)(?:(?:(?:(?:\+?3)?8\W{0,3})?0\W{0,3})?[34569]\s?\d[^\w,;(\+]{0,3})?\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0,3}\d\W{0, 3}\d\W{0,3}\d(?!(\W?\d))/: Invalid group

Помогите, пожалуйста, преобразовать данную регулярку для JavaScript'a.
Ответить с цитированием
  #2 (permalink)  
Старый 13.05.2014, 15:19
Профессор
Отправить личное сообщение для depp Посмотреть профиль Найти все сообщения от depp
 
Регистрация: 22.04.2014
Сообщений: 151

var str = '+38....'; // номер телефона украины
str.match(/(?:\w)(?:(?:(?:(?:\+?3)?8\W{0,5})?0\W{0,5})?[34569]\s?\d[^\w,;(\+]{0,5})?\d\W{0,5}\d\W{0,5}\d\W{0,5}\d\W{0,5}\d\W{0,5}\d\W{0,5}\d(?!(\W?\d))/)

без негативного просмотра назад с отрицанием.
только это выражение не проверяет валидность номера, а вытаскивает его из строки.

Последний раз редактировалось depp, 13.05.2014 в 15:25.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка e-mail регулярное выражение mycoding Общие вопросы Javascript 4 09.02.2017 10:12
как правильно написать регулярное выражение? Lucius Общие вопросы Javascript 5 17.04.2011 16:34
Регулярное выражение для проверки URL Beck Events/DOM/Window 13 06.02.2011 08:01
Регулярное выражение для youtube.com Romych Общие вопросы Javascript 10 28.06.2010 21:40
Регулярное выражение для поиска смайлов. NightmareZ Общие вопросы Javascript 13 23.06.2009 13:12