当前位置: 代码迷 >> ASP.NET >> 求一个简单的正则表达式,多谢
  详细解决方案

求一个简单的正则表达式,多谢

热度:9518   发布时间:2013-02-25 00:00:00.0
求一个简单的正则表达式,谢谢。
我现在用URL重写,希望用正则表达式实现以下效果:

当没有分页的时候连接样式为:   /show_info.aspx?id=abc
分页后的连接样式为:                   /show_info.aspx?id=abc&page=1

我想用一个正则实现输入     /u/abc             指向/show_info.aspx?id=abc
                                    输入     /u/abc/1       指向/show_info.aspx?id=abc&page=1


我现在分开都会写,可是结合起来就不会了。不知道要怎么解决啊?

第一个正则:~/u/(.+)                         ~/show_info.aspx?id=$1
第二个正则:~/u/(.+)/(.+)         ~/show_info.aspx?id=$1&page=$2


怎么样用一个正则让这两个都满足啊??
谢谢了,我实在没分了,请高手帮我下吧。

------解决方案--------------------------------------------------------
试一下
~/u/(.+)(/(.+))? ~/show_info.aspx?id=$1&page=$2
------解决方案--------------------------------------------------------
把楼上的改了一下,如果用 .的会$1将会是整个 /abc/1 ,另外数字为第三个匹配
/u/([a-zA-Z0-9]+)(/(.+))?

~/show_info.aspx?id=$1&page=$3