我有字符串“24.04.2013”。
如何识别字符串是否为日期?
提前致谢!
像这样的东西?
int count="24.04.2013".Count(c => c == '.');
我认为您真正的问题应该是:我如何验证日期?
您应该使用DateTime.TryParseExact()
它来验证它。
例如:
CultureInfo enDE = new CultureInfo("de-DE");
string dateString = "24.04.2013";
DateTime date;
if (DateTime.TryParseExact(dateString, "dd.MM.yyyy", enDE, DateTimeStyles.None, out date))
Console.WriteLine("Success");
else
Console.WriteLine("Failure");
你可以尝试使用
string.Split('.').Length >= 2
您可以将字符串与正则表达式 (RegEx) 匹配。这不仅可以告诉您是否有两个点,还可以告诉您格式是否正确:2 位、点、2 位、点、4 位。
Regex regex = new Regex("\d{2}\.\d{2}\.\d{4}");
if (regex.IsMatch(myInput, regex))
{ ... }
可以通过正则表达式检查它!
private static bool IsDateGerman(string germanDate)
{
Regex rx = new Regex(@"[0-3]?[0-9]\.[0-1]?[1-9]\.[0-9]{1,4}");
return rx.IsMatch(germanDate);
}
仍然没有处理像 39.19.2013 这样的所有案件