中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-09 01:24
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » 求一个很有挑战的批处理。
可打印版本  757 / 6
第1楼 gucheng 发表于 2008-06-20 13:56
新手上路 发帖 2 积分 6
求一个很有挑战的批处理。
各位老大,请教一个批处理。我有多组5个数ID,例如
12345
12356
01234
13456
12456
01456 等等
还有一些3个数的,例如
123
134
156
012
013 等等很多
需要的是验证每组5码ID里,是否都存在3个ID里的任意一个或多个号,例如123就在以上5码ID里都有,12345=123 12356=123 01234=123 13456=13 12456=12 01456=1,这样123就保留.
再例如:689 12345=0 12356=1 01234=0 13456=1 12456=1 01456=1,689在以上5个数的ID里有一组 12345没有689,这样689就要删除。
就是5个数字里面必须全包括3个数字里的一个或多个,这3个数子才能保留
5个数字里面有任意一组不包括3个数字里的任意一个,这3个数子就删除

说明:01456 12345.... 都是由小到大排列的 ,123 134....也是由小到大排列的

这个批处理可以解决大多数的3码,但是有拉的,麻烦大虾看一下,错在哪
del ok.txt
del temp.txt
del temp1.txt
del temp2.txt
setlocal enabledelayedexpansion
for /f %%i in (2.txt) do (
set cat=%%i
set dog=!cat:~0,1!
findstr !dog! 1.txt>temp.txt
set dog=!cat:~1,1!
findstr !dog! temp.txt>temp1.txt
set dog=!cat:~2,1!
findstr !dog! temp1.txt>temp2.txt
findstr . temp2.txt >nul 2>nul&&echo !cat!>>ok.txt)

1.txt 为5个数字,2.txt 为3个数字的, ok.txt 为结果

请各位看看问题出在那里
第2楼 bat-zw 发表于 2008-06-20 14:19
金牌会员 发帖 1,276 积分 3,105
楼主是不是想复杂了:


[ Last edited by zw19750516 on 2008-6-20 at 02:20 PM ]
第3楼 gucheng 发表于 2008-06-20 14:56
新手上路 发帖 2 积分 6
已经解决,谢谢
第4楼 terse 发表于 2008-06-20 15:31
银牌会员 发帖 946 积分 2,404
就楼主的例子 zw19750516兄的不能删689吧 补一个


[ Last edited by terse on 2008-6-20 at 03:46 PM ]
第5楼 bat-zw 发表于 2008-06-20 15:58
金牌会员 发帖 1,276 积分 3,105
Originally posted by terse at 2008-6-20 15:31:
就楼主的例子 zw19750516兄的不能删689吧 补一个
第6楼 terse 发表于 2008-06-20 16:11
银牌会员 发帖 946 积分 2,404
Originally posted by zw19750516 at 2008-6-20 15:58:

还是请兄弟先测试下。。。
好久不见了,兄弟一向可好?

zw19750516兄好 测试后是这样的
我想你在前面处理的时候,假设1.txt的第一行不包含2.txt第一行的任意一个数字
而到后面含有的时候 到最后flag还是给定义了
第7楼 bat-zw 发表于 2008-06-20 17:04
金牌会员 发帖 1,276 积分 3,105
Originally posted by terse at 2008-6-20 16:11:

zw19750516兄好 测试后是这样的
我想你在前面处理的时候,假设1.txt的第一行不包含2.txt第一行的任意一个数字
而到后面含有的时候 到最后flag还是给 ...

不好意思,是我把题意理解错了,修改如下:


[ Last edited by zw19750516 on 2008-6-20 at 05:06 PM ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023