【发布时间】:2016-04-14 01:51:43
【问题描述】:
我的正则表达式可能有问题(可能循环太多) 我认为这也会导致 MVC (C#) Web 应用程序超时...
正则表达式是:
public const string UrlPartPost = @"^([0-9a-zA-Z-/]*){1,256}$";
我是这样使用的:
Regex.Match(urlPart3, RegExKeys.UrlPartPost, RegexOptions.IgnoreCase).Success
我添加了一个实时测试 - 这也是超时: https://regex101.com/r/vZ0lN5/1
这很好:test1-test2-test3-test4-test5
这个超时:test1-test2-test3-test4-test_5
我该如何解决它以使其不会超时?
更新: “*”到底应该做什么?
【问题讨论】:
-
只是
[\da-zA-Z-/]+或[0-9a-zA-Z-/]{1,256} -
我忘记了为什么我有星号...不知道它是做什么的,我确实需要确保字符串的长度在 1 到 256 之间...
-
好吧,我没有看到您的测试字符串超时但基于模式没有成功。见regex101.com/r/vZ0lN5/2