返回列表 发帖
@echo off&setlocal enabledelayedexpansion
for %%a in (y1#0#1 y2#1#1 y3#2#1 y4#3#1 m1#5#1 m2#6#1 d1#8#1 d2#9#1) do (
    for /f "tokens=1,2,3 delims=#" %%i in ("%%a") do set "%%i=!date:~%%j,%%k!"
)
set /p code=请输入格式:
:lp
set "a=!code:~,1!"&set "code=!code:~1!"
set /a n+=1
for %%i in (d m y) do (
    if /i "%%i" equ "%a%" set /a .%%i+=1&call,set "_%n%=%%%%i!.%%i!%%"
)
if not defined _%n% set "_%n%=%a%"   
if defined code goto lp
for /l %%i in (1,1,%n%) do set /p=!_%%i!<nul
pause>nulCOPY
测试格式为d/m m-y y,d y-y
1

评分人数

***共同提高***

TOP

再来个通用版(不知道2000能用不)

@echo off&setlocal enabledelayedexpansion
set "d=%date%"
:lp1
set "a=!d:~,1!"&set "d=!d:~1!"
for %%i in (0 1 2 3 4 5 6 7 8 9) do if "%%i" equ "%a%" set "str=!str!%a%"&goto next
:next
if defined d goto lp1
set "com=reg query "HKEY_CURRENT_USER\Control Panel\International" /v sShortDate"
for /f "skip=4 tokens=3" %%i in ('%com%') do set "ymd=%%i"
set "ymd=%ymd:mm=m%"&set "ymd=!ymd:dd=d!"
set "ymd=%ymd:m=mm%"&set "ymd=!ymd:d=dd!"
:lp2
set "a=!ymd:~,1!"&set "ymd=!ymd:~1!"
for %%i in (y m d) do (
    if /i "%%i" equ "%a%" (
       set /a .%%i+=1&set "%%i!.%%i!=!str:~,1!"&set "str=!str:~1!"
    )
)
if defined ymd goto lp2
set /p code=请输入格式:
:lp3
set "a=!code:~,1!"&set "code=!code:~1!"&set "ok=a"
for %%i in (y m d) do (
    if /i "%%i" equ "%a%" set /a _%%i+=1&call,set /p=%%%%i!_%%i!%%<nul&set "ok="
)
if defined ok set /p=%a%<nul
if defined code goto lp3
pause>nulCOPY

[ 本帖最后由 batman 于 2008-10-22 17:39 编辑 ]
1

评分人数

***共同提高***

TOP

返回列表