bat判定字符串是否为日期
时间: 2023-11-01 13:10:25 浏览: 133
判断是否是时间、日期字符串
以下是一个简单的BAT脚本,用于判断字符串是否为日期:
```
@echo off
setlocal enabledelayedexpansion
set "str=2021-09-30"
set "valid=true"
rem 检查字符串长度是否为10位
if not "!str:~10,1!"=="" set "valid=false"
rem 检查字符串中的分隔符是否正确
if not "!str:~4,1!"=="-" set "valid=false"
if not "!str:~7,1!"=="-" set "valid=false"
rem 尝试将字符串转换为日期格式
set "date=!str:~0,4!-!str:~5,2!-!str:~8,2!"
if not "!date!"=="!str!" set "valid=false"
if !valid! (
echo %str% 是一个有效的日期
) else (
echo %str% 不是一个有效的日期
)
```
该脚本首先检查字符串的长度是否为10位,然后检查字符串中的分隔符是否正确。如果这些检查都通过,它会尝试将字符串转换为日期格式,并将其与原始字符串进行比较。如果它们匹配,则字符串是一个有效的日期。否则,它将被视为无效的日期。
阅读全文