pathPatterns = $pathPatterns; } public function filter(RouteCollection $routes): RouteCollection { $filteredRoutes = new RouteCollection(); foreach ($routes->all() as $name => $route) { if ($this->match($route)) { $filteredRoutes->add($name, $route); } } return $filteredRoutes; } private function match(Route $route): bool { foreach ($this->pathPatterns as $pathPattern) { if (!preg_match('{'.$pathPattern.'}', $route->getPath())) { return false; } } return true; } }