0

我的 ASP.Net 页面中有一个 RegularExpressionValidator

我使用它来检查有效日期,包括针对 TextBox 控件的闰年。

代码是:

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"   
ErrorMessage="Enter Valid Date" Display="Dynamic" Font-Bold="true" ForeColor="Red" 
ValidationExpression=
"^(((0[1-9]|[12]\d|3[01])(-|\/)(0[13578]|1[02])(-|\/)((19|[2-9]\d)\d{2}))|((0

[1-9]|[12]\d|30)(-|\/)(0[13456789]|1[012])(-|\/)((19|[2-9]\d)\d{2}))|((0[1-9]|1      
\d|2[0-8])(-|\/)02(-|\/)

((19|[2-9]\d)\d{2}))|(29(-|\/)02(-|\/)((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579]
[26])|   ((16|[2468]

[048]|[3579][26])00))))$" ControlToValidate="txtbdate">  
</asp:RegularExpressionValidator>

所有日期都检查得很好,但日期:09-09-2000 无法检查..

请帮忙..

提前致谢。

4

1 回答 1

0

第二条“线”将与之匹配。

我怀疑是正则表达式中的所有换行符导致了这个问题。

((0[1-9]|[12]\d|30)(-|\/)(0[13456789]|1[012])(-|\/)((19|[2-9]\d)\d{2}))

你可以在这里测试它:http ://regexpal.com/

对我来说很好。

于 2013-02-04T09:55:45.750 回答