Cool MVC: 使用正则式限定路由规则Rount
2009-06-10 14:58
344 查看
这里列出一些基本的关于MVC路由规则的使用正则表达式的例子。
/*Front*/ //限定id只能是数字,长度为0~11 routes.MapRoute( "Archive", "{user}/Archive/{id}", new{controller="Blog",action="Archive",user="",id=0}, new{id=@"[\d]{0,11}"}//new{id=@"[\d]*"}//*表示任意长度 ); //限定page只能是数字,长度为0~8 routes.MapRoute( "Archives", "{user}/Page/{page}", new{controller="Blog",action="Archives",page=1}, new{page=@"[\d]{0,8}"} ); /*Default*/ //限定controller只能匹配Home,Blog,About,Admin routes.MapRoute( "Default",//Routename "{controller}/{action}/{id}",//URLwithparameters new{controller="Home",action="Index",id=""},//Parameterdefaults new{controller=@"Home|Blog|About|Admin"} ); /*Blog*/ //限定user的长度是1~50 routes.MapRoute( "Blog", "{user}", new{controller="Blog",action="Archives",user="Home"}, new{user=@"[\w]{1,50}"} );
测试:如果用户在浏览器输入http://localhost/bruce/Archive/1则匹配第一个规则,正确;如果输入 http://localhost/bruce/Archive/0123456789120000或者 http://localhost/bruce/Archive/abc则会显示没有找到对应网页。简单实用的正则表达式!
关于正则表达式可以参考这里学习:http://www.regexlab.com/zh/regref.htm或 http://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F
相关文章推荐
- Cool MVC: 使用正则式限定路由规则Rount
- Cool MVC: 使用正则式限定路由规则Rount 【转】
- YII的自定义路由规则类的使用(初级)
- SolrCloud使用implict路由规则创建Shard
- 使用Mycat操作Oracle数据库(四) -- 自定义路由规则
- ThinkPHP5.1 路由地址中组合变量规则的使用
- thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
- thinkphp路由规则使用示例详解
- 使用分发列表过滤路由及路由汇总、防环
- AngularJs多重视图和路由的使用
- ENVI不规则裁剪(使用Shp文件)
- Java中的数据类型以及Java变量的使用规则
- iOS开发中正则式的使用
- iOS使用核心的50行代码实现一个路由组件
- ThinkPHP5 路由变量规则 - 04
- [Spring MVC] - 地址路由使用(一)
- UCOS-II 事件(event)的使用规则及MUTEX实例整理
- Asp.net Mvc 多级控制器 路由重写 及 多级Views目录 的寻找视图的规则
- Mysql集群和一主多从之后如何分库分表的路由规则详解(四)