正则表达式 - IIS URL 重写分页
我的 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用这样的表达式:
You could use an expression like this:
因为您已将
-[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.