[eluser]ivantcholakov[/eluser]
IMO you should "standardize" all of your links, how would they look like. Then you should place common rules within the global routes.php. Thus you will not be forced to write a specific rules for similar cases. Some exceptional rules may be added later, but not too many, and they may be placed within module-specific configuration files routes.php.
Here is my global route.php form the project I work on, it is an example for an admin panel with CRUD functionality. You can see that I don't use specific segment words.
Code:
<?php defined('BASEPATH') OR exit('No direct script access allowed');
$route['default_controller'] = 'home';
$route['404_override'] = 'error_404';
$route['([a-zA-Z_-]+)/(:num)'] = '$1/index/$2';
$route['([a-zA-Z_-]+)/(:num)/([a-zA-Z_-]+)'] = '$1/$3/$2';
$route['([a-zA-Z_-]+)/(:num)/([a-zA-Z_-]+)/(:num)'] = '$1/$3/$2/$4';
$route['([a-zA-Z_-]+)/([a-zA-Z_-]+)/(:num)'] = '$1/$2/index/$3';
$route['([a-zA-Z_-]+)/([a-zA-Z0-9_-]+)/(:num)/([a-zA-Z_-]+)'] = '$1/$2/$4/$3';