[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 hfg1977 于 2012-2-3 02:27 编辑
  1. ::======================= 利用findstr判断输入日期的合法性 1000~2999===========
  2. @echo off
  3. set "str="&set /p "str=请输入yyyymmdd: "
  4. set "year=%str:~0,4%"
  5. set /a "yp=!(year%%4)^!(year%%100)|!(year%%400)"
  6. set "str=%yp%%str%"
  7. echo %str%>con&echo %str%|findstr "\<[0-1][1-2][0-9][0-9][0-9][0][1-9][0-1][1-9]\> \<[0-1][1-2][0-9][0-9][0-9][0][1 3-9][1-2][0-9]\> \<[0-1][1-2][0-9][0-9][0-9][0][13578][3][0-1]\> \<[0-1][1-2][0-9][0-9][0-9][0][469][3][0]\> \<[0-1][1-2][0-9][0-9][0-9][1][0-2][0][1-9]\> \<[0-1][1-2][0-9][0-9][0-9][1][0-2][1-2][0-9]\> \<[0-1][1-2][0-9][0-9][0-9][1][02][3][0-1]\> \<[0-1][1-2][0-9][0-9][0-9][1][1][3][0]\> \<[0][1-2][0-9][0-9][0-9][0][2][2][0-8]\> \<[1][1-2][0-9][0-9][0-9][0][2][2][0-9]\>">nul&&echo 这是合法的日期||echo 这不是合法的日期
  8. pause
  9. ::===================== end 判断日期合法性================================
复制代码
判断是否闰年 套用"batman "版主的公式.
“阿姐走了。。。可是。。。我。。。我愿意。”

TOP

本帖最后由 hfg1977 于 2012-2-3 02:27 编辑
  1. 说明:
  2. 1.第一位为闰平年标志位
  3. 2.set /a "yp=!(year%%4)^!(year%%100)|!(year%%400)"
  4. 该公式在batman版主的贴中学习到
  5. 3.枚举所有合法的日期:
  6. [0-1][1-2][0-9][0-9][0-9]-[0][1-9]-[0-1][1-9]
  7. [0-1][1-2][0-9][0-9][0-9]-[0][1 3-9]-[1-2][0-9]
  8. [0-1][1-2][0-9][0-9][0-9]-[0][13578]-[3][0-1]
  9. [0-1][1-2][0-9][0-9][0-9]-[0][469]-[3][0]
  10. [0-1][1-2][0-9][0-9][0-9]-[1][0-2]-[0][1-9]
  11. [0-1][1-2][0-9][0-9][0-9]-[1][0-2]-[1-2][0-9]
  12. [0-1][1-2][0-9][0-9][0-9]-[1][02]-[3][0-1]
  13. [0-1][1-2][0-9][0-9][0-9]-[1][1]-[3][0]
  14. [0][1-2][0-9][0-9][0-9]-[0][2]-[2][0-8]
  15. [1][1-2][0-9][0-9][0-9]-[0][2]-[2][0-9]
复制代码
“阿姐走了。。。可是。。。我。。。我愿意。”

TOP

返回列表