我的字符串格式是M/d/yyyy.这意味着月份和日期数字前面没有零.例如:2012年9月23日,2012年7月9日等
我试过了:
^((((0 [1-9] | [12]\d | 3 [01]).-/.- /)|((0 [1-9] | [12]\d | 30) .-/.- /)|((0 [1-9] |≤1\ d | 2 [0-8])?[.- /] 0 2 .- /)|(29 [.- /] 0 ?2 .- /))|(((0 [1-9] | [12]\d | 3 [01])(0 [13578] | 1 [02])((1 [6-9] | [ ?2-9]\d)\ d {2}))|((0 [1-9] | [12]\d | 30)(0 [13456789] | 1 [012])((1 [6- 9] | [2-9]\d)\ d {2}))|((0 [1-9] | 1\d | 2 [0-8])02((1 [6-9] | [2-9]\d)\ d {2}))|?(2902((1 [6-9] | [2-9]\d)(0 [48] | [2468] [048] | [13579] [26])|((16 | [2468] [048] | [3579] [26])00)| 00))))$
但我想这是d/M/yyyy.
有人有M/d/yyyy的表达吗?
如果您尝试验证日期是否格式化,M/d/yyyy那么DateTime.TryParseExact是一个比Regex更好的解决方案.就像是.
string str = "9/23/2012";
DateTime dt;
if(DateTime.TryParseExact(str,
"M/d/yyyy",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out dt))
{
//valid date
}
else
{
//Invalid date
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2323 次 |
| 最近记录: |