JS regex匹配URL的所有部分,忽略由该URL中的动态值组成的特定路径

JS regex匹配URL的所有部分,忽略由该URL中的动态值组成的特定路径,regex,Regex,正则表达式应匹配的URL示例: https://domain/a/b/c/d/e/i39m33rgp5jcrohl5atwe4c9/g/h.file 这不应该匹配:i39m33rgp5jcrohl5atwe4c9 我一直在想一些类似的事情,但测试似乎并不匹配。有什么建议吗 ^/a/([^/]+/)?([^/]+/)?([^/]+/)?([^/]+/)?([^/]+/)?([^/]+/)([^/]+/)(\.file)?$对于所显示的示例,请尝试以下内容 (^https?:\/\/(?:.*?\/

正则表达式应匹配的URL示例:

https://domain/a/b/c/d/e/
i39m33rgp5jcrohl5atwe4c9
/g/h.file

这不应该匹配:
i39m33rgp5jcrohl5atwe4c9

我一直在想一些类似的事情,但测试似乎并不匹配。有什么建议吗


^/a/([^/]+/)?([^/]+/)?([^/]+/)?([^/]+/)?([^/]+/)?([^/]+/)([^/]+/)(\.file)?$

对于所显示的示例,请尝试以下内容

(^https?:\/\/(?:.*?\/){6}).*?\/(.*)$

说明:添加上述内容的详细说明

(               ##Starting 1st capturing group here.
  ^https?:\/\/  ##Checking condition if value starts from http/https://
  (?:.*?\/){6}  ##In a non-capturing group doing non-greedy match till / up to 6 times, just before dynamic value in URL.
)               ##Closing 1st capturing group here.
.*?\/           ##Again going non-greedy match till next occurrence of / here.
(.*)$           ##In 2nd capturing group having everything, rest of URL here.

请给出更多的例子并明确解释应该匹配哪些部分。Hi@WaisKamal,因此我代码阻止的部分应该匹配,但在特定位置随机生成的ID除外,因此您希望显式匹配
https://domain/a/b/c/d/e
/g/h.file
围绕一段文本?是的!因为这个字符串是动态的generated@CodyEJavaScript标记与此相关。JavaScript正则表达式语法不同于java正则表达式语法,它本身不同于C++正则表达式语法。