Регулярное выражение для валидации номеров Украины
Всем привет!
Есть необходимость проверить на валидность номера телефонов для Украины (мобильные + стационарные). Использую вот эту регулярку: /(?<!\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. |
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))/) без негативного просмотра назад с отрицанием. только это выражение не проверяет валидность номера, а вытаскивает его из строки. |
Часовой пояс GMT +3, время: 10:56. |