当前位置: 代码迷 >> ASP.NET >> 日期正则表达遇到怪有关问题 简单请看看
  详细解决方案

日期正则表达遇到怪有关问题 简单请看看

热度:717   发布时间:2013-02-26 00:00:00.0
日期正则表达遇到怪问题 简单请看看
在表达是(19|20)\d\d[-/.](0?[1-9]|1[012])[-/.](0[1-9]|[12][0-9]|3[01])的时候   日子如果是2位数就没问题   如果是1位数不带0就不能匹配   这个没问题
然后为了可以匹配不带0的   我就改成(19|20)\d\d[-/.](0?[1-9]|1[012])[-/.](0?[1-9]|[12][0-9]|3[01])   只加了一个问号   结果1位的时候带不带0都是对的   但是2位数的时候就会不能匹配了   请问是怎么回事呢?   谢谢

------解决方案--------------------------------------------------------
路过~~~,可以另外给你一个
<asp:RegularExpressionValidator Runat= "server " ID= "Regularexpressionvalidator1 " ControlToValidate= "txtBookAddtime " ErrorMessage= "时间格式不对 " ValidationExpression= "^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$ "> </asp:RegularExpressionValidator>
------解决方案--------------------------------------------------------
这样就行了

(19|20)\d\d[-/.](0?[1-9]|1[012])[-/.]([12][0-9]|3[01]|0?[1-9])

能看出区别来吧
  相关解决方案