You probably need something along these lines.
routes.MapRoute(
name: "DefaultRoute",
url: "Home/{action}",
defaults: new { controller = "Home", action = "Index" },
constraints: new { action = "[A-Za-z]*" }
);
or without an action
routes.MapRoute(
name: "DefaultRoute",
url: "Home/{id}",
defaults: new { controller = "Home", action = "Index", id = "" },
constraints: new { id = "[A-Za-z]*" }
);
You will need to make sure that the route name is different than any other routes you have setup and pay attention to the ordering of the routes as other routes that are similar can override each other. In this case make sure you would probably want this before the default route but be aware that it will override it.
As for the not having controller or even the action you can set defaults and do not need them within the route.
As for constraints you can simply add the constraints parameter to the route to set a regular expression for a certain attribute as shown above.
EDIT: Here are some useful links for more info on routing if you need it.