匹配多层深度URL

时间:2018-10-27 20:31:31

标签: javascript regex

我一直在尝试在javascript上编写正则表达式,以按以下格式帮助完全匹配URL的2级深度URL:

https://myurl.com/x/y/z
https://anotherurl.com/ab9/zx/qs

我尝试了其他答案中建议的一些正则表达式,并尝试根据自己的目的对其进行了修改-但无济于事:Regex to match 2 level deep URL and not 3 level deep (Google Analytics)https://mixedanalytics.com/blog/regex-match-number-subdirectories-url/

有人可以遮挡一些光线吗?请原谅我缺乏对正则表达式的了解。我才刚开始。

1 个答案:

答案 0 :(得分:0)

这是一个正则表达式,我认为您需要这样的东西:-

\^(?:https|http)\:\/\/[^\/]+\/[^\/]+\/[^\/]+\/[^\/]+$\

说明:-

  • ^:字符串的第一个。
  • (?: ... ):一个非捕获组。
  • https|http:同时匹配httpshttp
  • \:\/\/:匹配出现在://之后的https
  • [^\/]+:匹配/以外的任何内容,加号表示一个或多个出现(字母或符号)。
  • \/:匹配/符号。
  • $:字符串的结尾。

上面已重复并描述了正则表达式代码的另一部分,并且如果您不理解说明,请打开this链接,它比我描述的要好,但是我没有写 2级深度URL ,因为您的示例不是2级深度URL,所以它们是3级深度URL,如果您只希望2级深度URL而无需查看示例,请改用此方法:-

\^(?:https|http)\:\/\/[^\/]+\/[^\/]+\/[^\/]+$\