复杂的正则表达式路由过滤器通配符 Laravel 5.4



我尝试像下面这样过滤我的路线:

Route::post('/vote/{bandId}', 'VoteController@vote')->where('bandId', '[0-9]+');

但它允许以下路线:

http://localhost/vote/0

我不想要,因为我通过过滤自动增量字段(大于 0(从查询中获取资源。

我尝试像键入preg_match()一样键入高级正则表达式:

Route::post('/voter/{bandId}', 'VoteController@vote')->where('bandId', '[1-9][0-9]*');

它允许数字在 1 和无限之间。

问题

最后一条路由不起作用,在获取数据库中的资源之前,我如何使用复杂的正则表达式来检查通配符的完整性?

尝试以下正则表达式:

^[1-9]d*$

源:"任何正整数,不包括 0"的正则表达式是什么

最新更新