日期(yyyy/MM/dd)或年份(yyyy)的正则表达式验证器



我想要正则验证表达式来验证是否只输入了年份(yyyy(或日期(yyyy-MM-dd(。

不得接受:

21,
23323

它应该接受任何四位数的整数值(比如2012(,也应该只接受年份(yyyy-MM-dd(格式。

您不需要为此使用regex。

我将使用以string[]为参数的DateTime.TryParseExact重载。

string s = "2012";
DateTime dt;
var formats = new[] {"yyyy", "yyyy-MM-dd"};
if(DateTime.TryParseExact(s, formats, CultureInfo.InvariantCulture,
                          DateTimeStyles.None, out dt))
{
    // Your string is a valid DateTime for yyyy or yyyy-MM-dd format.
}

你在问题中说的是yyyy-MM-dd,但在标题中说的却是yyyy/MM/dd。将它们添加到您尝试验证的formats阵列中。

相关内容

  • 没有找到相关文章

最新更新