`
sophia_230
  • 浏览: 118705 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

时间格式的正则表达式

阅读更多

//日期格式yyyy  
PatternsDict.date_y= /^(\d{4})$/;  

//日期格式yyyy-mm  
PatternsDict.date_ym= /^(\d{4})-(0\d{1}|1[0-2])$/;  

//日期格式yyyy-mm-dd  
PatternsDict.date_ymd= /^(\d{4})-(0\d{1}|1[0-2])-(0\d{1}|[12]\d{1}|3[01])$/;  

//时间格式hh  
PatternsDict.time_h=/^(0\d{1}|1\d{1}|2[0-3])$/;  

//时间格式hh:mm  
PatternsDict.time_hm=/^(0\d{1}|1\d{1}|2[0-3]):([0-5]\d{1})$/;  

//时间格式hh:mm:ss  
PatternsDict.time_hms=/^(0\d{1}|1\d{1}|2[0-3]):[0-5]\d{1}:([0-5]\d{1})$/;

 

格式为时间,就是说前两位都不能少,而且不能大于23,后面的时和分不能大于59,必须写在16:02:01而不能为16:2:1

 

[0-2][0-3]:[0-5][0-9]:[0-5][0-9]

 

用CompareValidator   
     operator设成DateTypeCheck   
     type设成Date

这里是判断YYYY-MM-DD这种格式的,基本上把闰年和2月等的情况都考虑进去了,不过我已经忘了在哪里找到的。

^((((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-))$



下面的是加了时间验证的

^((((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-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$


   
   【aspx页面内:<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date")%>
   显示为: 2004-8-11 19:44:28
   我只想要:2004-8-11 】
   
   <%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date","{0:yyyy-M-d}")%>
   
   应该如何改?
   
   
   【格式化日期】
   取出来,一般是object
   ((DateTime)objectFromDB).ToString("yyyy-MM-dd");
   
   
   A.以下正确的输入格式: [2004-2-29], [2004-02-29 10:29:39 pm], [2004/12/31]
   
   ^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|
   (3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))
   |(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])
   |(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[1-9])|(1[0-2]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|pm]{2,2})))?$
   
   B.以下正确的输入格式:[0001-12-31], [9999 09 30], [2002/03/03]
   
   ^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$

分享到:
评论
3 楼 dabing69221 2017-05-21  
正则写的不错,记下了标记一下
2 楼 abcdeudi 2015-07-14  
错误太多了!!!
//时间格式hh:mm:ss 
PatternsDict.time_hms=/^(0\d{1}|1\d{1}|2[0-3]):[0-5]\d{1}:([0-5]\d{1})$/;
中间少括号!!!
1 楼 ba1du 2011-10-19  
很不错,我用了。试试先

相关推荐

    日期正则表达式(很实用)

    日期正则表达式(很实用) 日期正则表达式(很实用)日期正则表达式(很实用)日期正则表达式(很实用)

    C# 最全的日期正则表达式,没有之一

    考虑到这个正则表达式仅仅是用作验证,所以捕获组没有意义,只会占用资源,影响匹配效率,所以可以使用非捕获组来进行优化。 ^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2...

    万能日期正则表达式 (适用于各种日期样式)绝对经典

    中间的连接符平常用的是'-'和' ' 想显示时间就显示时间 &lt;br&gt;使用方法: &lt;br&gt;方法GenerateDateTimeReg(string formateType) 中传入一个datetime的formate格式,后面的工作就等着取Reg正则表达式吧。...

    js正则表达式验证时间格式

    一个正则表达式验证格式的方法 你一个可以调用的demo valid(str,tostr) str:字符串 tostr:格式 yy-mm-dd 支持.,/,-三种格式。

    java代码验证日期格式正则表达式(包含闰年验证)带注释

    * @param 日期验证,验证的格式有: * "yyyyMM","yyyyMMdd","yyyyMMdd HH:mm:ss", * "yyyy-MM","yyyy-MM-dd","yyyy-MM-dd HH:mm:ss" * "yyyy.MM","yyyy.MM.dd","yyyy.MM.dd HH:mm:ss" * "yyyy/MM","yyyy/MM/dd...

    时间验证正则表达式

    适用地 时间格式: 日期部分:2007-1-11 2007/11/1 2007 1 11 07-11-1 07/1/11 07 11 1 时间部分:5:5:5 05:05:05 &lt;br&gt;还有我个人使用的时候为了特别需要而根改的一些时间验证的正则表达式。

    时间正则表达式.txt

    时间正则表达式

    C# 正则应用之——最全的日期正则表达式 没有之一

    日期正则一般是对格式有要求,且数据不是直接由用户输入时使用。因应用场景的不同,写出的正则也不同,复杂程度也自然不同。正则的书写需要根据具体情况具体分析,一个基本原则就是:只写合适的,不写复杂的。 对于...

    正则表达式 (经典收藏)

    正则表达式 (经典收藏) 高效正则表达式 正则表入门 正则表教程

    日期验证的正则表达式很好用

    一个日期验证的正则表达式,c#版一个日期验证的正则表达式,c#版

    java基于正则表达式实现时间日期的常用判断操作实例

    主要介绍了java基于正则表达式实现时间日期的常用判断操作,简单说明了正则表达式常用元字符含义并结合实例形式分析了java基于正则表达式针对常用日期时间格式的判断操作技巧,需要的朋友可以参考下

    18.C#字符串和正则表达式参考手册 影印版

    附录D 在C#中管理文化上正确的日期和时间格式 226 D.1 使用DateTime的控制台示例 226 D.1.1 第一个控制台示例 227 D.1.2 管理字符串格式的注意事项 232 D.2 ASP的一些示例 233 D.2.1 修正 DateSquares 234 D.2.2 另...

    正则表达式必知必会.epub

    格式完美,正则必下本书所讲授的关于正则表达式知识正是你们在刚起步时最需要的,我们将从简单的文本匹配开始循序渐进地向大家介绍许多复杂的专题,其中包括回溯引用(backreference,或译为后向引用)、条件性求值...

    java 字符串 正则表达式 详细实例代码

    java 字符串 详细实例代码 字符串检索 可改变字符串 字符串生成器 日期和时间字符串格式化

    常用的日期数字类型的正则表达式集

    常用的日期数字类型的正则表达式集,对各种数字和日期格式进行了一些归纳总结

    正则表达式经典实例

    4.6 传统时间格式的合法性验证 4.7 检查ISO 8601格式的日期和时间 4.8 限制输入只能为字母数字字符 4.9 限制文本长度 4.10 限制文本中的行数 4.11 肯定响应的检查 4.12 社会安全号码的合法性验证 4.13 ISBN的...

    正则表达式实现将MM/DD/YYYY格式的日期转换为YYYY-MM-DD格式

    主要介绍了正则表达式实现将MM/DD/YYYY格式的日期转换为YYYY-MM-DD格式的方法,是一个比较简单实用的正则替换应用,对于怎能则表达式的学习具有一定的参考借鉴价值,需要的朋友可以参考下

    正则表达式经典实例.pdf

    4.6 传统时间格式的合法性验证 4.7 检查ISO 8601格式的日期和时间 4.8 限制输入只能为字母数字字符 4.9 限制文本长度 4.10 限制文本中的行数 4.11 肯定响应的检查 4.12 社会安全号码的合法性验证 4.13 ISBN的合法性...

    整理的C#的正则表达式

    整理的C#的正则表达式,可以节省很多写代码的时间。  只能输入数字:"^[0-9]*$"。  只能输入n位的数字:"^\d{n}$"。  只能输入至少n位的数字:"^\d{n,}$"。  只能输入m~n位的数字:。"^\d{m,n}$"  只能输入零和...

    正则表达式

    正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原,如"*"匹配它...

Global site tag (gtag.js) - Google Analytics