找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26146|回复: 8

[文本处理] [已解决]批处理如何从多个txt文本批量取补集?

[复制链接]
发表于 2012-7-8 09:50:48 | 显示全部楼层 |阅读模式
有若干txt文本,每个txt文本只记录了一行0-9的数据,现在需要批量求每个文本的补集。比如:一个命名为01的txt文本,记录的数据是12,其相对于0123456789的补集是03456789,该文本批处理后命名为01-1,记录的数据是03456789。将批处理后的文本放在一个新建的文件夹中。恳望大师出手相助!

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2012-7-8 10:49:26 | 显示全部楼层
不知道能不能满足你的要求,其实转变思路就很简单
@echo off
setlocal enableDelayedExpansion
set /p str=<01.txt
set str1=0123456789
call set "str1=%%str1:!str!=%%"
echo !str1!>01-1.txt
发表于 2012-7-8 11:22:36 | 显示全部楼层
本帖最后由 weichenxiehou 于 2012-7-8 11:28 编辑

回复 2# poter
我发现你回帖没有养成将代码括起来的习惯哦,热情很高,值得鼓励,但也要适当注意一下论坛的规则,用【code】和【/code】(这里中括号为英文状态下的)将代码括起来或者使用回复框里的“代码”按钮。鄙人不是管理人员,只是友善地提醒一下,原来管理层打压这些不规范现象很严厉的,现在稍微有点儿放松了。
发表于 2012-7-8 11:25:06 | 显示全部楼层
本帖最后由 apang 于 2012-7-8 11:50 编辑

是不是这意思:
  1. @echo off&setlocal enabledelayedexpansion
  2. md result 2>nul
  3. for /f "delims=" %%a in ('dir /a-d /b *.txt') do (
  4.   set str=0123456789&set n=0
  5.   set/p m=<%%a
  6.   call :lp
  7.   echo !str!>"result\%%~na-1%%~xa"
  8. )
  9. goto :eof

  10. :lp
  11. if not "!m:~%n%!"=="" set v=!m:~%n%,1!&call set str=%%str:!v!=%%&set/a n+=1&goto :lp
复制代码

评分

参与人数 1技术 +1 收起 理由
思想之翼 + 1 完美解决问题。

查看全部评分

 楼主| 发表于 2012-7-8 11:40:49 | 显示全部楼层
谢谢!这么快就回帖!代码完美解决问题!运行速度也快!
发表于 2012-7-8 12:30:30 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. md new
  3. for /f "delims=" %%a in ('dir /a-d /b *.txt') do (
  4.   for /l %%b in (0 1 9) do find "%%b" "%%a" >nul||set n=!n!%%b
  5.   echo,!n!>new\%%~na-1.txt&set n=
  6. )
  7. pause
复制代码
发表于 2012-7-8 13:02:17 | 显示全部楼层
回复 3# weichenxiehou


    谢谢你,但我发现那个标签框不是太好用,点选复制代码,然后再粘贴到txt里全是格式错乱

另外如果在代码框里用框选,复制粘贴到文本,除了第一行外,其余行都会多出一个空格

所以不太习惯那个东西
发表于 2012-7-8 20:38:47 | 显示全部楼层
回复 7# poter
哦,你那里复制有这些问题吗?我这里复制没有任何问题,不过我是用的ie,可能你用的其他浏览器吧,还是尽量括起来吧,美观不说,别人复制可能没问题哦。
发表于 2012-7-9 11:51:41 | 显示全部楼层
回复 7# poter


    你使用的是什么浏览器?哪个版本?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 11:42 , Processed in 0.021516 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表