C# & JS 判断字符串是否为日期格式

  在C#中,对格式的判断有一类专门函数,那就是TryParse。TryParse在各个不同的类型类(如int,string,DateTime)中,都是存在的。在TryParse中一般有两个参数,一个是待判断的字符串,另外一个是转换后的结果保存变量。

1:判断字符串内容是否为日期格式,并返回一个日期变量。

string BeginDate = "2020-7-22";
DateTime dtDate; if (DateTime.TryParse(strDate, out dtDate))
{
Console.WriteLine("是正确的日期格式类型"+dtDate);
}
else
{
throw new Exception("不是正确的日期格式类型!");
}

2:使用Parse函数判断字符串内容是否为日期格式。

public bool IsDate(string strDate)
{
try
{
DateTime.Parse(strDate); //不是字符串时会出现异常
return true;
}
catch
{
return false;
}
}

在JS中判断字符串是否为日期格式:

1:使用正则表达式匹配判断

var BeginDate="2020-07-23";
var r = new RegExp("^[1-2]\\d{3}-(0?[1-9]||1[0-2])-(0?[1-9]||[1-2][1-9]||3[0-1])$")//此表达式可判断输入的日期格式为“2020-07-23”或者"2020/07/23";
if (r.test(BeginDate) == false) {
alert("开始时间日期格式错误");
return false;
} else {
return true;
}

2:使用isNaN转换判断

var BeginDate= “2020-07-23”;
//isNaN(BeginDate)返回为false则是日期格式;排除data为纯数字的情况(此处不考虑只有年份的日期,如‘2020)
if(isNaN(BeginDate)&&!isNaN(Date.parse(BeginDate))){
  alert("BeginDate是日期格式!")
return true;
}else{
alert("BeginDate不是日期格式");
}

PS:将某一日期类型,转换为指定的字符串格式(MM大写默认月份,小写默认为分钟)

textBox.text =strDate.ToString("yyyy-MM-dd hh:mm:ss");
上一篇:JS判断IP的正则表达式


下一篇:(转)用JS判断ckeditor3.6版本编辑器内容为空的方法