ASP.Net MVC - MapRoute - RegEx

时间:2014-08-05 17:35:11

标签: regex asp.net-mvc asp.net-mvc-4

我想使用RegEx在ASP.Net MVC 4中创建一个新路由。 当网址包含斜杠和单词之间的一个字母时,我想重定向到特定的控制器和操作:

http://www.myurl.com/a/something/anotherthing/?mykeyword= .....

我目前的路线是:

routes.MapRoute(
             "MyRoute",
             "{*something}",
             new { controller = "mycontroller", action = "myaction" },
             new { theregex = @".*/a/.*?mykeyword=.*" });

但我从未进入mycontroller / myaction。我总是会重定向到默认路由。

有人能告诉我正则表达式有什么问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以尝试:

https?:\/\/[^\/]*\/a\/[^?]*\?mykeyword=

DEMO


程序中使用的字符串文字:

@"https?:\/\/[^\/]*\/a\/[^?]*\?mykeyword="