我需要一个正则表达式或任何其他解决方案来替换Url中间的id(不在查询字符串中)。
网址示例:
http://localhost:1876/category/6?sortBy=asc&orderBy=Popular
我想用 category / anotherID 替换 - category / 6 。
正在使用的路由是:
routes.MapRoute(
"categories",
"category/{categoryID}/{categoryName}",
new { controller = "Search", action = "SearchResults", categoryID = "", categoryName = "" }
);
感谢
答案 0 :(得分:2)
您可以使用Regex.Replace()替换模式'/ category / \ w + \?'按'/ category /?'。
string newCategoryId = "333";
Regex regex = new Regex(@"/category/\w+\?");
string inputString = "http://localhost:1876/category/6?sortBy=asc&orderBy=Popular";
string replacementString = string.Format("/category/{0}?", newCategoryId);
string newUrl = regex.Replace(inputString, replacementString);