bat 规定输入的字符
答案:1 悬赏:60 手机版
解决时间 2021-03-04 17:03
- 提问者网友:人生佛魔见
- 2021-03-04 11:50
bat 规定输入的字符
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-03-04 13:06
@echo off
setlocal enabledelayedexpansion
::254之内
set /p lan_ip=:
for /f "delims=. tokens=1-3*" %%i in ("%lan_ip%") do (
set lan_ip_node_1=%%i
set lan_ip_node_2=%%j
set lan_ip_node_3=%%k
set lan_ip_node_4=%%l
)
::检测ip输入是否有误
for /l %%a in (1,1,4) do (
call :test_254 !lan_ip_node_%%a! 254
if not [!bl!]==[0] goto 1
)
echo !lan_ip! 正确
::100之内
set /p num=:
call :test_254 !num! 100
if not [!bl!]==[0] goto 2
echo !num! 正确
pause
:test_254
set bl=1
for /l %%a in (1,1,%2) do (
if [%1]==[%%a] (
set bl=0
)
)
goto :eof
:1
echo !lan_ip! 错误
pause
exit
:2
echo echo !num! 错误
pause
exit其实还可以用FINDSTR里的正则,但是没有这个来的严格。
setlocal enabledelayedexpansion
::254之内
set /p lan_ip=:
for /f "delims=. tokens=1-3*" %%i in ("%lan_ip%") do (
set lan_ip_node_1=%%i
set lan_ip_node_2=%%j
set lan_ip_node_3=%%k
set lan_ip_node_4=%%l
)
::检测ip输入是否有误
for /l %%a in (1,1,4) do (
call :test_254 !lan_ip_node_%%a! 254
if not [!bl!]==[0] goto 1
)
echo !lan_ip! 正确
::100之内
set /p num=:
call :test_254 !num! 100
if not [!bl!]==[0] goto 2
echo !num! 正确
pause
:test_254
set bl=1
for /l %%a in (1,1,%2) do (
if [%1]==[%%a] (
set bl=0
)
)
goto :eof
:1
echo !lan_ip! 错误
pause
exit
:2
echo echo !num! 错误
pause
exit其实还可以用FINDSTR里的正则,但是没有这个来的严格。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯