验证URL的Javascript
我有一个文本框,用户将在其中输入URL,我需要验证此URL 例如:我只是尝试验证此部分:验证URL的Javascript,javascript,regex,validation,Javascript,Regex,Validation,我有一个文本框,用户将在其中输入URL,我需要验证此URL 例如:我只是尝试验证此部分: (https/http/ftp://www.gmail.two letters here) 我提到了两个字母,因为存在许多TLD,如.cc、.me等 我尝试了这个不起作用的正则表达式: (/((http|https):\/\/(\w+:{0,1}\w*@)?(\S+)|)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/) 如果我错了,请纠正我。只需使用: ((ht
(https/http/ftp://www.gmail.two letters here)
我提到了两个字母,因为存在许多TLD,如.cc、.me等
我尝试了这个不起作用的正则表达式:
(/((http|https):\/\/(\w+:{0,1}\w*@)?(\S+)|)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/)
如果我错了,请纠正我。只需使用:
((https?|ftp):\/\/)+([\w\d\.]+([\w]{2,6})?)
根据您的需要,您可以选择简单或。。。矫枉过正p
<html>
<div>
<ul>
<li>http://www.stackoverflow.com</li>
<li>httpwww.stackoverflow.com</li>
<li>a.b.c</li>
</ul>
</div>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
function IsURL(str_url){
var strRegex = "[a-zA-z]+://[^\s]*";
var re=new RegExp(strRegex);
if (re.test(str_url)){
return (true);
}else{
return (false);
}
}
$(document).ready(function(){
$("li").click(function(){
var url=$(this).text();
alert(url+" /n IsURL:"+IsURL(url));
});
});
</script>
</html>
- http://www.stackoverflow.com
- httpwww.stackoverflow.com
- a、 不列颠哥伦比亚省
函数IsURL(str_url){
var stregex=“[a-zA-z]+://[^\s]*”;
var re=新的RegExp(stregex);
如果(重新测试(str_url)){
返回(真);
}否则{
返回(假);
}
}
$(文档).ready(函数(){
$(“li”)。单击(函数(){
var url=$(this.text();
警报(url+”/n IsURL:“+IsURL(url));
});
});
你能告诉我们你现在有什么吗?你想用这些捕获做什么?什么不起作用?你失败的例子是什么?@Austin Brunkhorst:我已经在我的问题中添加了这个。你所拥有的,我指的是regex与文本匹配的实际Javascript。你可能走错路了:试一下像谷歌这样的词,它会说它是有效的。它应该有(它说这是有效的)(httpwww.test.co).检查空的正则表达式是什么vaidation@user1263374上一个版本是在二级域中支持的,因此存在您发现的错误。这是最简单的版本,可以适用于几乎所有基本模式。