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 true; } } return false; } }