Регулярное выражение для телефонов с пробелами на странице html

Помогите, пожалуйста, составить регулярное выражение, все перепробовал.
Задача - собрать номера с html страницы в разных вариациях - с пробелами, со скобками и так далее.

Есть выражение, которое собирает все номера

preg_match_all('/(\+?(?:(?:\-|\(|\)))?\d){1,31}/is', var_export($html), $results);

Однако оно не учитывает пробелы и ковычки.
Пробовал выражения для обработки

/\s|\+|-|\(|\)/

Для удаления пробелом и ненужных символов, но много раз погонял и заметил, что они(телефоны с пробелами и кавычками) не попадают в первую выборку.

Подскажите, пожалуйста, как можно объединить поиск телефона на html странице и поиск номеров с пробелами и кавычками?
Не силен в регулярных выражениях, роюсь в интернете вторые сутки, никак не могу найти решения.

Вот список примеров номеров, которых хотелось бы отыскать
8(ddd)ddddddd;
+7(ddd)ddddddd;
+7 ddd ddddddd;
8 ddd ddddddd; (Тут вариации всех пробелов в разных местах например 8 ddd ddd dd dd; и так далее а так же для +7)
8 (ddd ) ddddddd; (Тут вариации всех пробелов в разных местах например 8 (ddd )ddd dd dd; и так далее а так же для +7)
8 (ddd ) ddddddd; (Тут вариации всех пробелов в разных местах например 8 (ddd )ddd dd dd; и так далее а так же для +7)
8 (ddd ) ddddddd; (Тут вариации всех пробелов в разных местах например 8 (ddd )ddd dd dd; и так далее а так же для +7)
8 -ddd - ddd-dd-dd; (Тут вариации всех пробелов и этих самых тире в разных местах например 8 (ddd )ddd dd dd; и так далее а так же для +7)


Ответы (0 шт):