匹配Foward Slash或使用Regex之间的特定字符串
我正在尝试制作这个正则表达式:
([?=section\/en\/]*)([^\/#]*)
对于这些示例:
https://www.test.com/en/string-to-get#cid=4949
https://www.test.com/en/section/string-to-get/page&2#cid=4949
https://www.test.com/en/section/string-to-get#cid=4949
I'm trying to make this regex:
([?=section\/en\/]*)([^\/#]*)
For these examples:
https://www.test.com/en/string-to-get#cid=4949
https://www.test.com/en/section/string-to-get/page&2#cid=4949
https://www.test.com/en/section/string-to-get#cid=4949
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要使用
Or,只是
并获取第 1 组值。
此处,
(?<=section\/)
- 正向后查找,与紧接在section/
子字符串前面的位置相匹配([^\/#]* )
- 捕获组 1:除/
和#
之外的零个或多个字符。请参阅 正则表达式演示 #1 和 正则表达式演示#2。
根据是否需要正则表达式分隔符,如果它们不是
/
,您可以使用未转义的/
、(?<=section/)([ ^/#]*)
和section/([^/#]*)
。You need to use
Or, just
and grab Group 1 value.
Here,
(?<=section\/)
- a positive lookbehind that matches a location immediately preceded withsection/
substring([^\/#]*)
- Capturing group 1: zero or more chars other than/
and#
.See the regex demo #1 and regex demo #2.
Depending on whether or not regex delimiters are required and if they are not
/
s you may use an unescaped/
,(?<=section/)([^/#]*)
andsection/([^/#]*)
.