我想检查输入的网址是否有效。
这是我的代码
var regExpURL = /((http|https):\/\/(\w+:{0,1}\w*@)?(\S+)|)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
var websiteURL = $("#txtotherwebsite").val();
if(!regExpURL.test(websiteURL))
{
$("#errorwebsite")[0].innerHTML = "Invalid website name.";
$("#txtotherwebsite").removeClass("successTextBox").addClass("errorTextBox");
return false;
}
else
{
$("#errorwebsite")[0].innerHTML = "";
$("#txtotherwebsite").removeClass("errorTextBox").addClass("successTextBox");
return true;
}
return false;
但是当我使用它时,它只会进入其他地方。 regExpURL.test(websiteURL)始终返回true。
答案 0 :(得分:-1)
使用以下正则表达式:
(?<Protocol>\w+):\/\/(?<Domain>[\w@][\w.:@]+)\/?[\w\.?=%&=\-@/$,]*
要测试它,请转到:http://regexlib.com/RETester.aspx
放入源文本框:
http://www.usgs.gov
http://www.acl.lanl.gov/URI/archive/uri-archive.index.html
ftp://@host.com/
ftp://host.com/
ftp://foo:@host.com/
ftp://myname@host.dom/%2Fetc/motd
file://vms.host.edu/disk$user/my/notes/note12345.txt
prospero://host.dom//pros/name
戴上正则表达式文本框
(?<Protocol>\w+):\/\/(?<Domain>[\w@][\w.:@]+)\/?[\w\.?=%&=\-@/$,]*
它将匹配以上所有网址
希望它可以帮到你