在 asp.net 中,我必须验证文本框控件是否以“.aspx”结尾,否则显示错误消息请指导我如何为此条件创建自定义正则表达式。
问问题
1138 次
3 回答
1
如果您对使用 RegEx 很执着,您可以尝试以下方法:
private bool ValidateFilename(string input)
{
RegEx r = new RegEx(@".*?\.aspx$");
return r.IsMatch(input);
}
然而,RegEx 不一定是这种情况下的最佳选择。
于 2013-03-28T08:56:52.730 回答
-1
您可以只取最后 5 个字符并检查它们,您不需要正则表达式......
(在这样做之前检查长度......)
这是正则表达式:
".*?\.aspx$"
于 2013-03-28T08:15:32.640 回答
-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>
于 2013-03-28T08:17:03.147 回答