using uCalcSoftware; var uc = new uCalc(); using (var router = new uCalc.Transformer()) { // --- Define Routes --- // General rules first (lower precedence) router.FromTo("/products/{category}/{id}", "Handler: ProductDetail, category: {category}, id: {id}"); router.FromTo("/users/{id}", "Handler: UserProfile, id: {id}"); // Specific rule last (higher precedence) router.FromTo("/users/new", "Handler: CreateUserPage"); // --- Simulate Requests --- string[] urls = {"/users/123", "/users/new", "/products/electronics/567", "/contact"}; foreach(var url in urls) { var originalUrl = url; var result = router.Transform(url); if (result.Text == originalUrl) { Console.WriteLine($"URL: {originalUrl} -> 404 Not Found"); } else { Console.WriteLine($"URL: {originalUrl} -> {result}"); } } }