Я пробовал себя и искал в Интернете, чтобы писать это регулярное выражение, но безуспешно.
Мне нужно проверить, что данный URL-адрес относится к определенному домену и хорошо сформированной ссылке (в PHP). Например:
Хороший домен: example.com
Хорошие URL-адреса от example.com:
Плохие URL-адреса не из example.com:
Некоторые примечания: я не забочусь о «http» verus «https», но если для вас важно, чтобы вы предполагали, что «http» всегда Код, который будет использовать это регулярное выражение, это PHP, поэтому дополнительные баллы для этого.
ОБНОВЛЕНИЕ 2010:
Gruber добавляет большое регулярное выражение URL:
?i)\b((?:[az][\w-]+:(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][az]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”'']))
См. Его сообщение: Улучшенный либеральный, точный шаблон регулярного выражения для соответствия URL-адресам