批处理版区号、邮编查询器
查看全国各省、市地区邮编及区号,坛子里搜了一下,发现pusofalse和随风都写过类似工具。全当凑个热闹吧~~~需要一个文本文件,字数限制就没写在代码里,以附件形式上传吧。[code]@echo off&setlocal enabledelayedexpansion
:begin
mode con cols=60 lines=25
cls
echo.
echo ╭────────╮
echo ╭───────┤ 区号邮编查询器 ├───────╮
echo │ ╰────────╯ │
echo │ │
echo │ 本程序能可以查询全国各主要城市的区号和 │
echo │ │
echo │ 邮编。提供三种查询方式:1、按区号查询;2、按 │
echo │ │
echo │ 邮编查询;3、按省(直辖市)名查询;查询时输入相 │
echo │ │
echo │ 应的代号即可(按q返回上一层)。 │
echo │ │
echo │ 附加一个文本文件"区号邮编.txt",资料来源 │
echo │ │
echo │ 于网上。如发现错误,欢迎提出! │
echo │ │
echo │ code by lhjoanna │
echo │ │
echo ╰────────────────────────╯
echo.
set input=
set /p input=请输入代号:
if "%input%" equ "1" goto section
if "%input%" equ "2" goto postalcode
if "%input%" equ "3" goto province
if "%input%" equ "" echo 输入有误,请重新输入&pause>nul&goto begin
if not "%input:~1,1%" equ "" echo 输入有误,请重新输入&pause>nul&goto begin
if not "%input%" gtr 0 echo 输入有误,请重新输入&pause>nul&goto begin
if not "%input%" lss 4 echo 输入有误,请重新输入&pause>nul&goto begin
:section
mode con cols=25 lines=15
cls
echo.
set /p sec=请输入区号:
if "%sec%" equ "q" goto begin
echo %sec%|findstr "^0[0-9]*$">nul||goto section
set num=0
echo.&echo 区号:%sec%
for /f "tokens=2-5" %%i in ('findstr "\<%sec%\>" 区号邮编.txt') do (
set /a num+=1
if !num! lss 10 set "num= !num!"
echo !num! %%l %%k
if !num! equ 10 pause>nul&cls&echo.
)
if !num! equ 0 echo 未找到相应信息!&pause>nul&goto section
pause>nul
goto begin
:postalcode
mode con cols=25 lines=10
cls
set /p post=请输入邮编:
if "%post%" equ "q" goto begin
echo %post%|findstr "^[0-9][0-9][0-9][0-9][0-9][0-9]$">nul||goto postalcode
set num=0
echo.&echo.
echo 邮编:%post%
for /f "tokens=2-5" %%i in ('findstr "\<%post%\>" 区号邮编.txt') do (
set /a num+=1
if !num! lss 10 set num=0!num!
echo !num! %%l %%k
)
if !num! equ 0 echo 未找到相应信息!&pause>nul&goto postalcode
pause>nul
goto begin
:province
mode con cols=50 lines=25
cls
echo.
set /p pro=请输入省(直辖市)名:
if "%pro%" equ "q" goto begin
echo %pro%|findstr "^[^0-9][^a-z]*$">nul||goto province
echo.&echo 省(直辖市)名:%pro%
set num=0
for /f "tokens=2-5" %%i in ('findstr "\<%pro%\>" 区号邮编.txt') do (
set /a num+=1
if !num! equ 1 echo ID 省名 县市名 区号 邮编
if !num! lss 10 (set "num= !num!") else if !num! lss 100 (set "num= !num!")
echo !num! %%l %%k %%i %%j
set /a a=num%%20
if !a! equ 0 pause>nul&cls&echo.&echo ID 省名 县市名 区号 邮编
)
if !num! equ 0 echo.&echo 未找到相应信息!
pause>nul
goto begin[/code]链接: [url]https://pan.baidu.com/s/1prkIzH1lrI4tTRlbwkXpTQ[/url] 提取码: ccgf
页:
[1]