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

[文本处理] [已解决]批处理如何查找出文本每行0-9组成的数字字符串中缺少的数字

本帖最后由 pcl_test 于 2016-8-14 20:16 编辑

求助BAT如何批量取反?
如 :1.txt 文本 :01234567
                      :12345678

结果: 2.txt文本:01234567   89
                       :12345678   09


ps:数字均为0-9组成  1.txt文本没规律
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 pcl_test 于 2015-4-4 10:22 编辑
  1. '&cls&@echo off&cscript -nologo -e:vbscript %~fs0 & exit /b
  2. Set FSO = CreateObject("Scripting.FileSystemObject")
  3. For Each NowLine In Split(FSO.OpenTextFile("1.txt",1,true).ReadAll,vbCrLf)
  4.     For Each NowNum In Split("0 1 2 3 4 5 6 7 8 9")
  5.       If InStr(NowLine,NowNum)=0 Then NewLine = NewLine & NowNum
  6.       Next
  7.       InnMsg = InnMsg & NowLine & " " & NewLine & vbCrLf
  8.       NewLine = ""
  9. Next
  10. Set WF = FSO.OpenTextFile("2.txt",2,True)
  11. WF.Write InnMsg
  12. WF.Close
  13. 'Msgbox InnMsg
  14. Set FSO = Nothing
  15. Set WF = Nothing
复制代码

TOP

  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%a in (1.txt) do (
  3.      set/p.=%%a &set "s=%%a"
  4.      for /l %%b in (0,1,9) do if "!s:%%b=!"=="!s!" set/p.=%%b
  5.      echo,
  6. ))<nul>2.txt
复制代码
1

评分人数

初学BAT,非专业。代码不适当之处还望前辈们多多指点。在此表示感谢!

TOP

本帖最后由 pcl_test 于 2015-4-3 15:09 编辑

回复 1# necn33
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. (for /f "delims=" %%a in ('type "a.txt"') do (
  4. >$ echo,%%a
  5. set s=
  6. for /l %%b in (0 1 9) do find "%%b" $ >nul || set s=!s!%%b
  7. echo,%%a !s!
  8. ))>b.txt
  9. del $
  10. pause
复制代码

TOP

返回列表