Asp.net 日期格式的正则表达式(MM/dd)
我有一个文本框,需要接受MM/dd格式的日期,有人能建议我使用正则表达式吗Asp.net 日期格式的正则表达式(MM/dd),asp.net,regex,Asp.net,Regex,我有一个文本框,需要接受MM/dd格式的日期,有人能建议我使用正则表达式吗 提前感谢使用一些编程逻辑,验证月日是否正确会更容易。要回答有关如何验证的问题,用户输入了一个xx/xx,其中xx是1或2位数字 在powershell中,我会使用 $String = "02/24" if ($String -match "(\d{1,2})/(\d{1,2})") { # some code they got it right Write-Host "good job" # d
提前感谢使用一些编程逻辑,验证月日是否正确会更容易。要回答有关如何验证的问题,用户输入了一个xx/xx,其中xx是1或2位数字 在powershell中,我会使用
$String = "02/24"
if ($String -match "(\d{1,2})/(\d{1,2})") {
# some code they got it right
Write-Host "good job"
# display the matches
$matches
} # end if
# blank line
write-host
$months = $(@(1..12) + @(1..9 | %{ $_.ToString("00") } ) ) -join "|"
$days = $(@(1..31) + @(1..9 | %{ $_.ToString("00") } ) ) -join "|"
write-host "months: " $months
write-host "days: " $days
if ($String -match "^($months)/($days)$") {
# some code they got it right
Write-Host "Slightly more complex good job"
# display the matches
$matches
} # end if
屈服
good job
Name Value
---- -----
2 24
1 02
0 02/24
months: 1|2|3|4|5|6|7|8|9|10|11|12|01|02|03|04|05|06|07|08|09
days: 1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|01|02|03|04|05|06|07|08|09
More complex good job
2 24
1 02
0 02/24
第一个if块快速且脏,验证您为每个字段提供了至少2位数字。第二个if块的验证效果稍好一些,只允许用作日期的值 最好使用面膜扩展器。如果没有年份(2月29日),就不可能获得正确的reqex。您应该使用DateTime.TryParse来纠正这个错误。如果1752年9月
有问题,正则表达式也不会有帮助。@peer,请您详细说明一下that@SudhakarByna看看这篇文章,它解释了如何使用Datetime.TryParse来验证Datetime输入。