@Absolute138

Как вырезать российские номера телефона из строки?

Юзеры постят свои телефоны, что недопустимо правилами, но кроме телефонов могут постить и всякие параметры, которые нужны. Найденная на просторах регулярка - работает криво - пример:
$text = 'Lorem ipsum dolor 18. 89108002001 Lorem ipsum dolor 20.3??? 901 2010 705 Lorem 90 60 90 ipsum dolor (901) 865-3308  sit amet 90-60-90 ipsum dolor 90/60/90 Lorem ipsum: 90.60.90 dolor!';

$b = preg_replace('/((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}/', ' *** ' , $text);
echo $b;

Результат выполнения:
Lorem ipsum dolor 18. *** 01 Lorem ipsum dolor 20.3??? *** 705 Lorem *** ipsum dolor  *** sit amet *** ipsum dolor 90/60/90 Lorem ipsum: 90.60.90 dolor!

Как выпилить явные номера телефона в различных написаниях:
89108002001
901 2010 705
901 201 07 05
+7 901-201-07-05
901-201-07-05
(901)201-07-05
(901) 20107-05
8 9 1 0 8 0 0 2 0 0 1
и т.д
Не знаю точно к чему здесь привязаться... Девятка в начале и больше или равно 10 цифрам?
  • Вопрос задан
  • 322 просмотра
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы