Регулярка на проверку адреса сайта

226
29 октября 2017, 20:23

У меня получилась очень длинная регулярка, я её сделал, через или (|), как можно сократить?

echo preg_match('#^(https?://[a-z]+\.[a-z]{2,}|https?://www\.[a-z]+\.[a-z]{2,}|www\.[a-z]+\.[a-z]{2,}|[a-z0-9-]+\.[a-z]{2,})$#', 'my-site.ru');

Она правильно работает со всеми адресами.

//должны пройти проверку (результат 1)
    site.ru
    site.com
    site.travel
    www.site.ru
    http://site.ru
    https://site.ru
    http://www.site.ru
    https://www.site.ru
    my-site.ru
    mysite1.ru

    //Не должны пройти проверку (результат 0)
    http://
    https://
    http://qwerty
    http://qwerty
    http://qwerty.r
    http://qwerty.21
    http://site.qwerty.ru
    http://qwerty.RU
    http://.ru
    https://.ru
    http:site.ru
READ ALSO
MVC и подключение скриптов php

MVC и подключение скриптов php

Здравствуйте, создал сайт с помощью MVC, теперь возник вопрос как к данному сайту подключать, картинки, скрипты оффлайнВедь он обрабатывает...

256
Почему вываливается такая ошибка? - WordPress

Почему вываливается такая ошибка? - WordPress

У меня появились вот такие ошибки:

316
Структура функции ООП

Структура функции ООП

Какова структура класса в данном коде?

221