[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 zz100001 于 2017-2-9 15:47 编辑

诉我直言,很多人已经不喜欢用批处理了
字符处理不好也不方便
于是给你的一般都是ps或者“混编批处理”(其实就是拿批处理启动其他脚本
电话号码如何识别你也没有明确的标准
这里就按11位数字来取好了
  1. @echo off
  2. set fn=a.txt
  3. setlocal enabledelayedexpansion
  4. set PhoneNumbers=
  5. set pn=
  6. set /a nc=0
  7. call :PhoneNumberReader "%fn%"
  8. echo 文件中包含的全部手机号:
  9. echo %PhoneNumbers%
  10. pause
  11. goto :EOF
  12. :PhoneNumberReader
  13. echo %~s1
  14. for /f "delims=" %%a in (%~s1) do (
  15.     call :CharReader %%a
  16. )
  17. call :CheckPhoneNumber
  18. goto :EOF
  19. :CharReader
  20. set l=%*
  21. :CheckNumber
  22. set /a n=!l:~,1! 1>nul 2>&1
  23. if "!n!" equ "!l:~,1!" (
  24.     set pn=!pn!!n!
  25.     set /a nc+=1 1>nul 2>&1
  26. ) else (
  27.     call :CheckPhoneNumber *
  28. )
  29. set l=!l:~1!
  30. if "!l!" neq "" goto :CheckNumber
  31. goto :EOF
  32. :CheckPhoneNumber
  33. if !nc! equ 11 (
  34.     for %%a in (134 135 136 137 138 139 150 151 152 158 159 157 182 187 188 147 130 131 132 155 156 185 186 133 153 180 189) do (
  35.         if "%%a" equ "!pn:~,3!" (
  36.             echo 找到一个手机号:!pn!
  37.             set PhoneNumbers=!PhoneNumbers!!pn!%1
  38.             goto :CheckPhoneNumberOver
  39.         )
  40.     )
  41. )
  42. :CheckPhoneNumberOver
  43. set pn=
  44. set /a nc=0 1>nul 2>&1
  45. goto :EOF
复制代码
1

评分人数

    • taofan712: 再次谢谢,元宵快乐!技术 + 1

TOP

返回列表