正则表达式检查有效网址http或www

时间:2015-07-30 05:22:00

标签: php regex url-validation

我想检查用户插入的URL是否有效。 我有不同的情况允许用户插入URL

1) www.test.com (valid)
2) http://test.com (valid)
3) http://www.test.com (valid)
4) www.test (not valid)

这样,用户就可以插入wwwhttp,如果用户只插入www,则在网址之前预先附加http://。 我找到了许多正则表达式,但他们严格检查http://

提前致谢。

2 个答案:

答案 0 :(得分:4)

请参阅this链接可能对您有帮助。

<?php
// Variable to check
$url = "http://www.w3schools.com";

// Validate url
if (!filter_var($url, FILTER_VALIDATE_URL) === false) {
     echo("$url is a valid URL");
} else {
     echo("$url is not a valid URL");
}
?>

答案 1 :(得分:0)

我认为在第3点你有一个错误。你写过“wwww”

除此之外,正确的正则表达式可能如下:

^(https?:\/\/)?(www\.)?[a-z0-9]+\.[a-z0-9]{2,3}$