标题: 怎么样做输入控制.不允许输入特殊符号.不允许空格之类
[打印本页]
作者: bbkboy
时间: 2008-8-6 15:23
标题: 怎么样做输入控制.不允许输入特殊符号.不允许空格之类
我大概写了下...
但是不知道回车怎么屏蔽.还有当中的空格asd asd...还有英文字母怎么控制论
@echo off
:one
@set /p a=阶乘算法演示,请输入你要输入的阶乘数(1-20),按q退出:
if %a% EQU q goto :two
if "%a%" ==" " echo 您的输入为空 && goto :one
if %a% LSS 1 echo 您输入的值太小 && goto :one
if %a% GTR 20 echo 您输入的值太大 && goto :one
:two
exit
作者: bbkboy
时间: 2008-8-6 15:50
if "%a%" NEQ "1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20" echo 您不能输入特殊符号 && goto :one
除了这样写..
作者: bbkboy
时间: 2008-8-6 16:13
偶是新新新新人.谁帮帮偶呀...
作者: bbkboy
时间: 2008-8-7 14:03
顶一下....谁教教偶怎么写法啊
作者: huahua0919
时间: 2008-8-7 14:11
仔细看findstr/?
[class] 字符类别: 任何在字符集中的字符
[^class] 补字符类别: 任何不在字符集中的字符
[x-y] 范围: 在指定范围内的任何字符
用findstr
比如判断是否是1-5范围和是否是字符a,f,x
@echo off
:start
set /p a=please input number:
echo %a%|findstr "[^1-5afx]" &&echo 输入错误&&goto start
echo 输入正确
pause
[
Last edited by huahua0919 on 2008-8-7 at 02:17 PM ]
作者: knoppix7
时间: 2008-8-7 15:59
感觉用Set A_A_A_A_A_A_A_A_ 来显示好点.Echo %a%碰上特殊符号就挂