Php 如何走正确的路线?

Php 如何走正确的路线?,php,regex,routes,kohana,Php,Regex,Routes,Kohana,例如,我有以下url和路由: http://mysite/test/article-1 及 //测试时路由 路由::集合('Test','Test/',数组('alias'=>'\D+')) 它仅适用于http://mysite/test/article,如何使其正确?规则是别名不能以数字开头。这个正则表达式可能就是您要找的 ^(?)([0-9])([a-zA-Z0-9]+)([0-9]+)? 一些测试: 文章->真实 第19条->正确 第19条->正确 第19条->真实 为什么程序员+开

例如,我有以下url和路由:

http://mysite/test/article-1

//测试时路由
路由::集合('Test','Test/',数组('alias'=>'\D+'))

它仅适用于
http://mysite/test/article
,如何使其正确?规则是别名不能以数字开头。

这个正则表达式可能就是您要找的

^(?)([0-9])([a-zA-Z0-9]+)([0-9]+)?

一些测试:

  • 文章->真实
  • 第19条->正确
  • 第19条->正确
  • 第19条->真实
  • 为什么程序员+开发人员在堆栈上?溢出->真
  • 1文章->错误
  • 1第17条->错误

您不是在寻找如何编写正确的路由,而是在寻找适用于
article-n
的正则表达式。文章掩码可以不同,比如
我的文章
justart
我已经测试了一些东西,它们确实有效。如果生成的掩码不“适合”,则应更新正则表达式或生成它们的算法:)
// Route on Test    
Route::set('Test', 'test/<alias>',array('alias'=>'\D+'))