我正在使用代码点火器,并试图通过 $routes 数组捕获多个 url 段。
例如,我的网址将如下所示:
/segment-1/segment-2/keyword/
我一直在尝试使用这个正则表达式:
$route['([\w-?]+){1,3}'] = "my/method";
但这仅返回此子组匹配:
segment-1
然后当我尝试这条路线时:
(\/[\w-?]+){1,3}
它将此作为子组匹配返回:
/keyword
所以我一直明确提出我想确保捕获所有实例的确切路线:
$route['([\w-?]+)'] = 'my/method/$1';
$route['([\w-?]+)/([\w-?]+)'] = 'my/method/$1/$2';
$route['([\w-?]+)/([\w-?]+)/([\w-?]+)'] = 'my/method/$1/$2/$3';
这显然是相当冗长的。最终,我想在一个正则表达式中捕获所有段。
想法?