如何在asp.net中编写自己的正则表达式

时间:2013-03-28 08:13:56

标签: asp.net regex validation

在asp.net中我必须验证一个文本框控件,如果它以“.aspx”结尾,否则显示错误信息 请指导我如何为这种情况创建自定义正则表达式。

3 个答案:

答案 0 :(得分:1)

如果您使用RegEx已经死定,可以尝试以下内容:

private bool ValidateFilename(string input)
{ 
    RegEx r = new RegEx(@".*?\.aspx$");
    return r.IsMatch(input);
}

然而,RegEx并不一定是这种情况下的最佳选择。

答案 1 :(得分:-1)

你可以拿最后5个字符并检查它们,你不需要正则表达式....

(在做之前检查长度......)

这是正则表达式:

  

".*?\.aspx$"

答案 2 :(得分:-1)

您不必使用正则表达式,但如果您真的想要,请尝试:

MatchCollection matches = Regex.Matches(TextBox1.Text, ".*?\.aspx$"); 

                string[] var_matches = matches.Cast<Match>()
                                         .Select(match => match.Value)
                                         .ToArray();

if (var_matches.Length > 0)
{
   // do stuff
}

编辑

如果您想使用 asp:RegularExpressionValidator ,请尝试:

 <asp:RegularExpressionValidator ID="RegularExpressionValidator1"  ValidationExpression=".*?\.aspx$" ControlToValidate="TextBox1" 
    runat="server" ErrorMessage="Error!"></asp:RegularExpressionValidator>