正则表达式--指定时间格式校验

1、对闰年平年的划分,关键是看2月最后一天是28还是29进行划分

^((([0-9]{2})(0[48]|[2468][048]|[13579][26]))   #闰年,能被4整除但不能被100整除

|((0[48]|[2468][048]|[13579][26])00)   #闰年,能被400整除

-02-29) #匹配闰年2月29日这一天。如果不是这一天,则由下面式子继续匹配验证。

|([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3}) #平年(0001-9999)

-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))   #月日,1、3、5、7、8、10、12月有31天

|((0[469]|11)-(0[1-9]|[12][0-9]|30))   #月日,4、6、9、11月有30天

|(02-(0[1-9]|[1][0-9]|2[0-8])))   #平年2月只有28天,月日表示为【02-01至02-28】

2、一种指定格式的时间格式校验,精确到毫秒3位

--正则表达式:校验精确到3位毫秒的时间戳字符串,时间格式‘YYYYMMDDHH24MISSFF3‘

select REGEXP_SUBSTR(‘20180227112155333‘, ‘((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(((0[13578]|1[02])(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)(0[1-9]|[12][0-9]|30))|(02(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))0229))(([0-1]\d|2[0-3])[0-5]\d[0-5]\d\d\d\d)‘, 1, 1) t from dual;

3、

原文地址:https://www.cnblogs.com/ZeroMZ/p/9595728.html

时间: 2024-10-17 00:03:08

正则表达式--指定时间格式校验的相关文章

Newtonsoft.Json在转换指定时间格式时默认是UTC时间

最近做项目发现前台传入时间格式是/Date(1542893033449)/的时候,后台用Newtonsoft.Json发现竟然转换成了UTC时间,查阅了Newtonsoft.Json文档,发现如果需要转换成本地时区的时间需要按照以下写法 public void SetDate(string piple) { var x = new JsonSerializerSettings(); x.DateTimeZoneHandling = DateTimeZoneHandling.Local; var

OC_时间格式

NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init]; //指定时间格式 [dateFormatter setAMSymbol:@"AM"]; [dateFormatter setPMSymbol:@"PM"]; [dateFormatter setDateFormat:@"YYYY年MM月dd日 hh:mm:ss aaa"]; NSString *dateStr = [date

js中使用eval()方法将字符串转换成日期格式、并获取指定时间的日期

1.在js中eval()方法将字符串格式数据转换成日期格式 function getDate(strDate) {         //strDate为需要转换成日期格式的字符串         var date = eval('new Date(' + strDate.replace(/\d+(?=-[^-]+$)/,                 function (a) { return parseInt(a, 10) - 1; }).match(/\d+/g) + ')');    

日期时间格式正则表达式

日期时间格式正则表达式 本文章已收录于: 正则表达式 (?n:^(?=\d)((?<day>31(?!(.0?[2469]|11))|30(?!.0?2)|29(?(.0?2)(?=.{3,4}(1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00))|0?[1-9]|1\d|2[0-8])(?<sep>[/.-])(?<month>0?[1-9]|1[012])\2(?

java校验时间格式 HH:MM

package com; import java.text.SimpleDateFormat; import java.util.Date; /** * @author Gerrard */ public class CheckTimeHHMM { public static void main(String[] args) { boolean flg = checkTime("8:00"); boolean flg3 = checkTime("24:00"); b

Jsp开发自定义标签,自定义标签将字符串转成指定的时间格式显示

本例以将 字符串格式的时间转成指定的时间格式显示. 第一步.定义一个标签处理程序类,需要集成javax.servlet.jsp.tagext.TagSupport,代码如下: import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Calendar; import javax.servlet.jsp.JspException; import javax.servlet.jsp.tagext.T

iOS规范化时间格式,object-C计算指定时间与当前的时间差

object-c计算指定时间与当前的时间差 头文件(.h): #import <Foundation/Foundation.h> @interface LuDate : NSDate +(NSString *) compareCurrentTime:(NSString*) strDate; @end .m文件: /** * 计算指定时间与当前的时间差 * @param compareDate 某一指定时间 * @return 多少(秒or分or天or月or年)+前 (比如,3天前.10分钟前)

Java中时间格式处理,指定N天/小时等之后的时间

1)根据当前时间,获取具体的时刻的时间 N天前 M小时之前 可用 new Date().getTime() - 24 * 60 * 60 * 1000*N[N天之前]的方法来获取处理时间之后的具体的值,最终转化为想要的时间格式 import java.text.SimpleDateFormat; import java.util.Date; public class getTime { public static void main(String[] args) { SimpleDateForm

js 校验时间格式

1.获取用户输入的时间: var bagin = $('.input_one').val(); 2.验证时间格式是否正确:(验证通过返回时间戳格式,例如:(2017-01-01,2017,-,01,-,01),否则返回null) ar bagin_r = bagin.match(/^(\d{4})(-)(\d{2})(-)(\d{2})$/); if(bagin_r==null){ alert("请输入正确的开始时间格式,如:2017-01-01"); return false; }