本帖最后由 mxxcgzxxx 于 2011-6-4 11:28 编辑
- @echo off
- set 正模式=
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]0[1-9]0[1-9]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]0[1-9]1[0-9]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]0[^02]2[0-9]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]022[0-8]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]0[13578]3[0-1]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]0[469]30$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]1[0-2]0[1-9]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]1[0-2][12][0-9]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]1[02]3[0-1]$"
- set "正模式=%正模式% ^[1-2][0-9][0-9][0-9]1130$"
- set "正模式=%正模式% ^[1-2][0-9][13579][26]0229$"
- set "正模式=%正模式% ^[1-2][0-9][2468][048]0229$"
- set "正模式=%正模式% ^[1-2][0-9][02468][48]0229$"
- set "正模式=%正模式% ^[02468][048]000229$"
- set "正模式=%正模式% ^[13579][26]000229$"
-
-
- :loop
- set /p 开始日期=按yyyymmdd格式输入开始日期:
- echo.%开始日期%|findstr "%正模式%">nul && set "a=%开始日期%" || goto :loop
- :loop1
- set /p 结束日期=按yyyymmdd格式输入结束日期:
- echo.%开始日期%|findstr "%正模式%">nul && cls || goto :loop1
- if %结束日期% lss %开始日期% echo 结束日期小于开始日期! & goto:loop1
-
- :1
- if %a:~4,2%==13 set /a a=a/10000*10000+9999
- if %a:~6,2%==32 set /a a=a/100*100+99
- echo.%a%|findstr "%正模式%">nul && echo %a%
- if %a%==%结束日期% goto :2
- set /a a+=1
- goto :1
- :2
- pause>nul
- goto :loop
复制代码
|