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

[挑战] 批处理寻找所有条件里相同的数字

假设有如下数字:

2190717
219117
2199817
2190517
2191417
21921917

为了大量数据统计的需要,我用一句话生成类似的数据
for /l %%i in (1,1,100) do echo 219%%i17>>1.txt

在这堆数据里,都有 219 的前缀和 17 的后缀,而中间的数据是随机的。

现在,我们的题目来了:
       利用批处理,找出 219 的前缀 和  17 的后缀,并将去掉后的结果输出到2.txt

输出的结果类似:
1
2
3
……
100

      前提:219 和 17在题目中是未知的,所以我们需要找出这2个未知的数据。。(这也是这里的难点)

原帖由 youxi01 于 2008-10-17 19:16 发表
我在思考一个问题,或者询问楼主:
在这里,究竟是人工识别前缀还是要求自动识别?

当然是自动识别前缀和后缀来呀。。

若是人工识别,这个题目就没有难度了。。

这个是对字符串知识的一次总结。。

TOP

我的思路是这样的。

假设有1000组数据。。

任意取两个数据进行比较,取相同的数据作为参考量。
假设 2910117
          2910217
这两个数据,就取到了 2910 这个参考。

然后进行一次 Findstr /r "^2910" 的输出查找,看找到的数据量是否有1000条。
若不满足1000条,则取  291 查找,看是否有1000条。直到满足

或者
一个一个的向后取值
例如 findstr /r "^2"  直到不满足条件为止。。

不过,我发现你们的代码可能更适合一些了 。。

继续研究一下,看是否有BUG呢。

TOP

返回列表