C#正则表达式判断输入日期格式是否正确

本文将介绍一段实例代码,来讲解利用正则表达式使C#判断输入日期格式是否正确的方法。希望这段代码能对大家有所帮助。

通常我们在用C#编写系统程序或者Web开发时,都会遇到需要验证输入的字符串是否是日期的情况,下面为大家介绍一种非常全面的用正则表达式验证日期的方法:

c 正则表达式日期代码一:

/// <summary> /// 是否为日期型字符串 /// </summary> /// <param name="StrSource">日期字符串(2008-05-08)</param> /// <returns></returns> public static bool IsDate(string StrSource) { return Regex.IsMatch(StrSource, @"^((((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-9]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$"); } /// <summary> /// 是否为时间型字符串 /// </summary> /// <param name="source">时间字符串(15:00:00)</param> /// <returns></returns> public static bool IsTime(string StrSource) { return Regex.IsMatch(StrSource, @"^((20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d)$"); } /// <summary> /// 是否为日期+时间型字符串 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsDateTime(string StrSource) { return Regex.IsMatch(StrSource, @"^(((((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)$ "); }

c 正则表达式日期代码二:

//是否是整数 public static bool IsInt(string StrSource) { return Regex.IsMatch(StrSource, @"^[0-9]*$"); } public static bool IsDate(string strDate) { if (string.IsNullOrEmpty(strDate)) return false; string s_reg = @"^(?ni:(?=\\d)((?'year'((1[6-9])|([2-9]\\d))\\d\\d)(?'sep'[/.-])(?'month'0?[1-9]|1[012])\\2 (?'day'((?<!(\\2((0?[2469])|11)\\2))31)|(?<!\\2(0?2)\\2)(29|30)|((?<=((1[6-9]|[2-9]\\d)(0[48]| [2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00)\\2\\3\\2)29)|((0?[1-9])|(1\\d)|(2[0- 8])))(?:(?=\\x20\\d)\\x20|$))?((?<time>((0?[1-9]|1[012])(:[0-5]?\\d){0,2}(\\x20[AP]M))|([01]? \\d|2[0-3])(:[0-5]?\\d){1,2}))?)$"; Regex reg = new Regex(s_reg); if (reg.IsMatch(strDate.ToLower())) return true; else return false; }

以上就是小编给大家介绍的C#正则表达式判断输入日期格式是否正确的全部内容,希望对大家学习c正则表达式日期判断有所帮助。同时也非常感谢大家一直以来对脚本之家网站的支持。

时间: 2024-08-01 09:15:57

C#正则表达式判断输入日期格式是否正确的相关文章

C#正则表达式判断输入日期格式是否正确_正则表达式

本文将介绍一段实例代码,来讲解利用正则表达式使C#判断输入日期格式是否正确的方法.希望这段代码能对大家有所帮助.  通常我们在用C#编写系统程序或者Web开发时,都会遇到需要验证输入的字符串是否是日期的情况,下面为大家介绍一种非常全面的用正则表达式验证日期的方法:  c 正则表达式日期代码一: /// <summary> /// 是否为日期型字符串 /// </summary> /// <param name="StrSource">日期字符串(20

JavaScript 判断日期格式是否正确的实现代码_时间日期

转载者最起码注明作者和出处!http://www.cnblogs.com/GuominQiu 复制代码 代码如下: //--------------------------------------------------------------------------- //判断日期格式是否正确 //返回值是错误信息, 无错误信息即表示合法日期字符串 function isDateString(strDate){ var strSeparator = "-"; //日期分隔符 var

DateTime.TryParse(2316.5, out qssj) 判断是否日期格式,怎么浮点型也是日期格式?

问题描述 DateTime.TryParse(2316.5,outqssj)判断是否日期格式,怎么浮点型也是日期格式?那个说明下,应该怎么判断日期格式? 解决方案 解决方案二:你不是应该判断字符串是否日期格式么,怎么往里传浮点型???解决方案三:DateTime.TryParse("2316.5",outqssj)返回时间:2316-5-10:0:0想要用户输入标准格式时间,用日期时间控件啊,不要让用户随便瞎写解决方案四:try...catch...+DateTime.TryParse

javascript如何判断输入的url是否正确

 这篇文章主要介绍了javascript如何判断输入的url是否正确,需要的朋友可以参考下 网页得来,原网页广告太多,影响心情   代码如下: <html>  <head>  <title>检查是否为URL</title>  <script language="javascript">  function check(){  str = form1.txt.value;  str = str.match(/http://.+/

javaweb-如何判断输入的验证码是否正确呢?

问题描述 如何判断输入的验证码是否正确呢? 我在servlet类中实现了图片验证码,并将其保存到session中了, session.setAttribute("vcode", sRand); 我在jsp中, 验证码: 看不清换一张 我应该怎么写JS代码,判断验证码输入是否正确呢? 解决方案 验证码图片里面的字母是系统随机生成的,它被放到session里面,当用户提交时,就用session面存储的信息与用户输入的信息比较,相等则验证通过 如果你js里仍然不能比较,就看看你获取input

c#-用dataGridView制作表格,在删除时获取选中行ID的时候提示输入字符串格式不正确?

问题描述 用dataGridView制作表格,在删除时获取选中行ID的时候提示输入字符串格式不正确? if (dataGridView1.SelectedRows.Count != 0) { shangpinid = Convert.ToInt32(dataGridView1.SelectedRows[0].Cells[0].Value.ToString()); sql = string.Format("DELETE FROM shangpin WHERE ID={0}", shang

IOS正则表达式判断输入类型(整理)

在开发过程中,有时需要对用户输入的类型做判断,最常见是在注册页面即用户名和密码,代码整理如下: 只能为中文 -(BOOL)onlyInputChineseCharacters:(NSString*)string{ NSString *zhString = @"[\u4e00-\u9fa5]+"; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",zhString]

关于输入字符串格式不正确的问题

最近用ASP.NET做东西的时候,用到DataGrid,在写更新操作时总是出现 输入字符串的格式不正确[FormatException: 输入字符串的格式不正确.] System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +0的错误.一时想不出办法,搜索了一些东西,无赖多数都是网站上出现的类似的执行错误的页面显示. 后来突然把DataGrid里成绩列为空的项都给填了一遍,居然这次没有报错:分析一下

Winform之TextBox输入日期格式验证yyyy-mm-dd_C#教程

复制代码 代码如下: private void button1_Click(object sender, EventArgs e)        {            string s = textBox1.Text.ToString();            bool b = ValidateDataTime(s);            string rs = "";            if (b)            {                rs = &qu