
| Quote: | |
|
CODE: [Copy to clipboard]findstr "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*"
CODE: [Copy to clipboard]如果想要精确匹配要写很长的,要等会findstr "[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9]*[0-9]"
| Quote: | |
|
| Quote: | |
|
| Quote: | |
|
| Quote: | |
|
CODE: [Copy to clipboard]@echo off
set /p ip=输入ip
set "num=^[0-9]*[0-9]\.[0-9]*[0-9]\.[0-9]*[0-9]\.[0-9]*[0-9]$"
echo %ip%|findstr /x "%num%">nul&&echo ip 正确||echo ip 错误
pause
CODE: [Copy to clipboard][ Last edited by FQ on 2008-5-10 at 10:39 PM ]@echo off&setlocal
:begin
set/p ip=输入IP Address (Format:xxx.xxx.xxx.xxx):
if not defined ip (goto begin)
echo/%ip%|findstr /r "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$" >nul 2>&1||goto begin
for %%a in ("%ip:.=" "%") do call :QF %%a
echo %keep:~1%
goto:eof
:QF
for /f "delims=0 tokens=*" %%b in (%1) do (
set a=%%b
if not defined a (call:FQ 0) else call:FQ %%b
)
goto:eof
:FQ
if %1 gtr 255 (cls&&echo 错误IP地址如下:)
set keep=%keep%.%1
CODE: [Copy to clipboard]如果大家在Linux下面,可以试试这个regexp:echo.1.20.3.45|findstr /r "^[1-9][0-9]*\.[1-9][0-9]*\.[1-9][0-9]*\.[1-9][0-9]*$"
| Quote: | |
|
CODE: [Copy to clipboard]@echo off
echo .123.2.3|findstr /r "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$"
| Quote: | |
|
| Quote: | |
|
| Quote: | |
|
| Quote: | |
|
| 欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) | Powered by Discuz! 2.5 |