我在c#中有一段代码来检查一个值是否是一个有效的正则表达式模式.
代码很直接: @H_301_3@try { System.Text.RegularExpressions.Regex.IsMatch("",pattern); } catch (Exception) { return "pattern matches must be a valid regex value"; }
代码很直接: @H_301_3@try { System.Text.RegularExpressions.Regex.IsMatch("",pattern); } catch (Exception) { return "pattern matches must be a valid regex value"; }
我试图测试它是否正常工作,但我无法找到无效的正则表达式.呵呵
有什么建议么?
解决方法
这无效…
@H_301_3@[
您还可以在http://regexhero.net/tester/实时测试正则表达式的有效性
顺便说一句,你实际上不需要测试一个字符串的正则表达式,看看它是否有效.您可以简单地实例化一个新的Regex对象并捕获异常.
这是Regex Hero在返回详细的错误信息时所做的
@H_301_3@public string GetRegexError(string _regexPattern,RegexOptions _regexOptions) { try { Regex _regex = new Regex(_regexPattern,_regexOptions); } catch (Exception ex) { return ex.Message; } return ""; }