日期:2014-05-18  浏览次数:20374 次

求一个简单的正则表达式,谢谢。
我现在用URL重写,希望用正则表达式实现以下效果:

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

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


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

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


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

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

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