正则表达式 - IIS URL 重写分页

发布于 2024-12-29 20:29:05 字数 308 浏览 0 评论 0原文

我的 URL 看起来像这样:

domain.com/12345/some-product-category

并且使用可选分页:

domain.com/12345-2/some-product-category

到目前为止,我的模式看起来像这样:

^([0-9]{5})(-[0-9]+)?/([_0-9a-z-]*)

但是捕获 {R:2} 返回“-2”而不是所需的“2”...我该如何解决这个问题?

My URL looks like this:

domain.com/12345/some-product-category

and with the optional pagination:

domain.com/12345-2/some-product-category

so far my pattern looks like this:

^([0-9]{5})(-[0-9]+)?/([_0-9a-z-]*)

but the capture {R:2} return "-2" and not "2" as wanted... How do I fix this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风筝有风,海豚有海 2025-01-05 20:29:05

您可以使用这样的表达式:

^(\d{5})(?:-(\d+))?/([\w-]*)

You could use an expression like this:

^(\d{5})(?:-(\d+))?/([\w-]*)
岛歌少女 2025-01-05 20:29:05

因为您已将 -[0-9]+ 放入组中,而不是 [0-9]+。您应该从组中去掉减号。
试试这个正则表达式 ^([0-9]{5})(-([0-9]+))?/([_0-9a-z-]*) 并取第 3 组。

because you've placed in your group -[0-9]+ and not [0-9]+. You should take off minus sign from group.
Try this regex ^([0-9]{5})(-([0-9]+))?/([_0-9a-z-]*) and take group 3.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文