Javascript URL验证正则表达式

Javascript URL验证正则表达式,javascript,regex,Javascript,Regex,我有以下url验证正则表达式: /(ftp | https?)://[^”]+$/ 这是参考文献: 包括http://localhost:8080,但它也验证了下面我不想要的内容。上面的正则表达式不应该传递下面的URL 1. http://www.example..com 2. http://.com 3. http://. 4. http://www.example. 请帮忙,因为我是正则表达式中的noob 第二个问题,虽然与问题无关,但regex是,当我针对regex验证nul

我有以下url验证正则表达式:

/(ftp | https?)://[^”]+$/

这是参考文献:

包括
http://localhost:8080
,但它也验证了下面我不想要的内容。上面的正则表达式不应该传递下面的URL

 1. http://www.example..com
 2. http://.com
 3. http://.
 4. http://www.example. 
请帮忙,因为我是正则表达式中的noob

第二个问题,虽然与问题无关,但regex是,当我针对regex验证null和undefined时,我得到了true。这是默认行为还是我在这里遗漏了什么?

试试这个

function is_valid_url(url)
{
     return url.match(/^(ht|f)tps?:\/\/[a-z0-9-\.]+\.[a-z]{2,4}\/?([^\s<>\#%"\,\{\}\\|\\\^\[\]`]+)?$/);
}
函数是\u有效的\u url(url)
{
返回url.match(/^(ht | f)tps?:\/\/[a-z0-9-\.]+\.[a-z]{2,4}\/?([^\s\\\\\\\\\\\\\\\\\\\[\]`+)$/;
}

调用
is\u valid\u url(你的网站\u url)
函数,无论你想在哪里验证网站。

试试这个..


//仅用于演示,避免表单提交
jQuery.validator.setDefaults({
是的,
成功:“有效”
});
$(“#myform”)。验证({
规则:{
字段:{
要求:正确,
网址:true
}
}
});
我为javascript构建了正则表达式IP和DNS验证

/^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/)?((([a-z0-9])*[:]){1}|(([a-z0-9])*[.]){1}|(([0-9]){1,3}([.]|[:])){3}(([0-9]){1,3}[:]){1})([a-z]{2,5}|[0-9]{1,5})([.]([a-z0-9]){1,3})?(\/.*)?$/

你说失败是什么意思?它们被标记为有效的还是无效的?检查这个-这已经被活活打死了。请,请,在提问前搜索。可能重复的可能重复的确定我现在检查它{2,4}不包括大量的TLD,尤其是所有新出来的TLD。请参阅使用{2,22}将涵盖大部分内容。它确实验证\和ˆ!