我想检查给定的网址是否有效。
它应该接受:
www.gmail.com
并且应该拒绝:
www.gmail
我试过用这个/((ftp|http|https):\/\/)?(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
它可以工作,但如果给定的输入是www.gmail
它确实接受它。
有任何想法吗?
更新
我想检查给定的网址是否有效。
它应该接受:
www.gmail.com
并且应该拒绝:
www.gmail
我试过用这个/((ftp|http|https):\/\/)?(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
它可以工作,但如果给定的输入是www.gmail
它确实接受它。
有任何想法吗?
更新
试试这个。它对我有用
<script type="text/javascript">
function validate() {
var url = document.getElementById("url").value;
var pattern = new RegExp("^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}([0-9A-Za-z]+\.)");
if (pattern.test(url)) {
alert("Url is valid");
return true;
}
alert("Url is not valid!");
return false;
}
</script>
在 jQuery 中
你可以使用 url 验证
<input type="text" class="url"/>
您可以为此使用 Jquery Validate 插件。
$("#myform").validate({
rules: {
field: {
required: true,
url: true
}
}
});
你可以在这里找到它
解决了我的问题:
在网上搜索时发现了这个。
/^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}[0-9A-Za-z\.\-]*\.[0-9A-Za-z\.\-]*$/
var pattern1 = /^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}[0-9A-Za-z\.\-]*\.[0-9A-Za-z\.\-]*$/;
var result = "www.gmail";
if (pattern1.test(result)) {
console.log("test");
}else{
console.log("fail");
}
它效果最好。