Board logo

标题: [文本处理] 批处理中如何实现限定set /p手动输入的字符串内容 [打印本页]

作者: 渣白    时间: 2017-3-8 23:33     标题: 批处理中如何实现限定set /p手动输入的字符串内容

关于set /p a=。。。。。。。。。。详情见内容
  1. @echo off
  2. set /p a=请输入
  3. if "%a%" ==
  4. echo %a%
复制代码
这个怎么给a一个限制,限制为25个数,由英文字母数字和字符组成的,少于25个数不通过,符合的进入下一步。
这种是用 if 吗?给个例子。输入xxxx。xxxx。xxxx。xxxxx。xxxx 为例。。。。在这里谢谢了
作者: taofan712    时间: 2017-3-9 09:39

  1. @echo off
  2. :loop
  3. if %n% equ 10 cls
  4. echo;&set/p a=请输入
  5. set /a n+=1
  6. if %n% equ 10 cls
  7. if "%a:24,1%"=="" (echo;少于25个字符&goto loop )
  8. echo;%a%|findstr [0-9]|findstr [a-Z]||(echo;需由字母数字组成&goto loop )
  9. echo;hello world &pause>nul
复制代码

作者: 渣白    时间: 2017-3-13 19:48

回复 2# taofan712


    闪退。。。无法运行
作者: taofan712    时间: 2017-3-13 20:31

回复 3# 渣白
  1. @echo off
  2. :loop
  3. echo;&set/p a=请输入
  4. set /a n+=1
  5. if %n% equ 10 cls
  6. if "%a:~24,1%"=="" (echo;少于25个字符&goto loop )
  7. echo;%a%|findstr [0-9]|findstr [a-Z]||(echo;需由字母数字组成&goto loop )
  8. echo;hello world &pause>nul
复制代码
感谢提醒,之前有两处笔误。
作者: 渣白    时间: 2017-3-13 22:40

回复 4# taofan712


    感谢,帮了我一个大忙,把我的代码缩短了!
作者: ai20110304    时间: 2017-3-14 17:34

回复 4# taofan712


    亮点在于变量偏移与组合操作符的使用。Appreciate.       感觉知识的传播与交流




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2