#year# #month# #day# #id# #_p#等,其中#p#是分页页码,p前面可以自定义符号,这里下划线为例。
由于分页页码不一定存在,比如默认文章首页 1.html不包含分页码1_1.html。
比如
/html/#year#/#month#/#day#/#id##_p#.html
需要转换成正则路由规则
'/^\/html\/(\d+)\/(\d+)\/(\d+)\/(\d+)(_\d+)?\.html/'=>'Article/index?year=:1&month=:2&day=:3&id=:4&p=:5'
而这些通配符顺序不一致,问题难点在于:
1.#_p#标签的可有可无特殊性,有没有更好的处理办法。
2.如何将路由规则右侧querystring的参数和前面的通配子组对应,也就是:1,:2,:3这些与前面的括号对应。
问题我已经解决了,用的正则,数组遍历等手段,再提出来是想看看有木有更好的思路,甚至将这种模式推倒都可以。

最佳答案