-1

任何机构都可以在以下日期范围内建议 REGX

格式为 CCYYMMDD 19000101 到 20001231 空白

我是REGX的新手,请帮帮我。

4

1 回答 1

5

正则表达式解析日期时间???一位智者曾经说过:

有些人在遇到问题时会想:

我知道,我会使用正则表达式。

现在他们有两个问题。

来吧,您有用于此类任务的内置方法,例如DateTime.TryParseExact

string dateStr = "19000101";
DateTime date;
if (DateTime.TryParseExact(dateStr, "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out date)
{
    // you could safely use the date instance created for you here
}
else
{
    throw new InvalidFormatException("Sorry the date you have given me is not in the expected format");
}

好的,既然您已经使用上述方法解析了日期,您可以轻松测试该日期是否在预期范围内:

DateTime start = new DateTime(1900, 1, 1);
DateTime end = new DateTime(2000, 12, 31);
DateTime date = ... use the previous method to parse your string
if (date > start && date < end)
{
    // success
}
else
{
    // the date is outside the range
}
于 2013-01-15T06:29:58.037 回答