我知道有无穷无尽的正则表达式可以验证URL,但是我发现的所有内容都存在问题。我需要一个正则表达式将匹配上的所有HTTP或HTTPS URL,但无法验证,如果连接不具有顶级域名,如果缺少一个子不验证。如果可能的话,还需要匹配完整的url段。
以下是的网址的实施例不应验证
https
以下是一些应验证的URL示例:
https://www
https://www.
https://www.exampledomain
我一直在使用以下正则表达式...
https://www.axiamed.com
https://www.axiamed.com/independent-software-vendors/
...但它得到比赛的最后上面说我不想对比赛列出的3个网址的。不知道从这里去哪里。有人能指出我正确的方向吗?
由于任何人愿意帮助!
答案 0 :(得分:0)
这是您遇到问题的示例javascript代码
var result =/^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/|ftp:\/\/www\.|ftp:\/\/)?[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/.test("https://www.axiamed.com/independent-software-vendors/");
if(result)
alert("url Matching");
else
alert("Url not matching")
希望这对您有帮助
答案 1 :(得分:0)
怎么样?
/^(ftp|https?)\:\/{2}w{3}\.[a-z_A-Z]{1,}\.[a-z]{3}(\/(.){1,})?/g
var urls = [
"https://www",
"https://www.",
"https://www.exampledomain",
"https://www.axiamed.com",
"https://www.axiamed.com/independent-software-vendors/"
]
var valids = urls.map((str) => {
return str.match(/^(ftp|https?)\:\/{2}w{3}\.[a-z_A-Z]{1,}\.[a-z]{3}(\/(.){1,})?/g)
})
console.log(valids)
答案 2 :(得分:-1)
尝试这个
^(http:// www。| https:// www。)?[a-z0-9] +([-。] {1} [a-z0-9] +)。[ az] {2,5}(:[0-9] {1,5})?(/。)?$
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
}) // <--- Missing parenthesis here!
export class AppRoutingModule {}