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

Мне нужно проверить веб-адрес, используя регулярные выражения.

если пользователь вводит URL как

www.test.comhttp://www.test.comhttps://www.test.com

у меня есть регулярное выражение, как

/^(http\:\/\/[a-zA-Z0-9_\-]+(?:\.[a-zA-Z0-9_\-]+)*\.[a-zA-Z]{2,4}(?:\/[a-zA-Z0-9_]+)*(?:\/[a-zA-Z0-9_]+\.[a-zA-Z]{2,4}(?:\?[a-zA-Z0-9_]+\=[a-zA-Z0-9_]+)?)?(?:\&[a-zA-Z0-9_]+\=[a-zA-Z0-9_]+)*)$/

но это позволит только второй вариант. Как я могу изменить регулярное выражение так, чтобы он также принял 1-й и 3-й вариант

Ответы на вопрос(6)

Ваш ответ на вопрос