Вопрос по RexExp (регулярка для проверки правильности моб.т.
Новая тема Написать ответ
# Вс Май 06, 2012 2:51 pmYabuti Зарег.: 28.11.2008 ; Сообщ.: 16263Ответить с цитатой
Всем привет!
Кто в регексах понимает, подскажите, как можно составить выражение, чтобы оно проверяло максимальное количество вариантов - хочу на сайте сделать проверку, но чтобы регились только те, кто указал правильный номер.

Номера жестко не заданы, могут вводиться в следующих форматах:
Код:
8-777-1234567
8-777-123-4567
8-777-123-45-67
8 777 123 45 67
8 777 123 4567
8(777)1234567
8(777)123 45 67
8(777)123 4567
8(777)123-45-67
+7-777-1234567
+7-777-123-4567
+7-777-123-45-67
+7 777 123 45 67
+7 777 123 4567
+7(777)1234567
+7(777)123 45 67
+7(777)123 4567
+7(777)123-45-67


префиксы - не только 777, но и еще 5 других (их сам добавлю, нужно под одну составить):
701
705
707
775
702

Вот такие на Хабре нашел регулярки, но они только частично "пробивают", часть номеров остается как неправильные:

Код:
/(\+7|8)(\d+|-|\d{3}-)(\d{3})(-\d{3}|-\d{2}|\d+)(-\d{4}|-\d{2}-\d{2}|
-\d{2}|\d{2}-\d{2}|\d{2,4})/

^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$



Заранее большое спасибо за ответы! :thup:
# Вс Май 06, 2012 3:15 pmYabuti Зарег.: 28.11.2008 ; Сообщ.: 16263Ответить с цитатой
а, все, решил
это в тестере глючило, а в php-скрипте нормально выбрало
:thup:
Новая тема Написать ответ    ГЛАВНАЯ ~ ТЕХНИЧЕСКИЕ ВОПРОСЫ
 
Любое использование материалов, размещенных на ArmadaBoard.com, без разрешения владельцев ArmadaBoard.com запрещено.