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

[文本处理] 批处理怎样提取并批量生成数字编号?

X070100001      
X070100002
X070200901
X070201601
X080100601
X080401501
X080401001
X120500590
X没有任何意思  07代表07年 01代表1月 00001代表数字编号
我想按照年份 月份后面数字编号最大的那组提取出来

07年1月    X070100002最大
07年2月    X070201601最大
08年1月    X080100601最大
08年4月    X080401501最大
12年5月    X120500590最大
上面这个例子 总共提取以上5组数据到一个新的TXT文本文件里去
接着我想把提取的数据按顺序批量生成
比如我想让上面5组数据 每组再增加500个
最后的结果是
07年1月   X070100002  X070100003  X070100004  一直到X070100502
07年2月   X070201601  X070201602  X070201603  一直到X070202101
请会的朋友帮忙 谢谢~

本帖最后由 apang 于 2012-6-3 19:21 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "tokens=*" %%a in (a.txt) do (
  3.   set "str=%%~nxa"&set "str1=!str:~,5!"
  4.   if not defined !str1! (
  5.     set ".!str1!=!str:~5!"&set "!str1!=1"
  6.   ) else (
  7.     call set "r=%%.!str1!%%"
  8.     if !str:~5! gtr !r! set ".!str1!=!str:~5!"
  9.   )
  10. )
  11. (for /f "tokens=1,2 delims=.=" %%a in ('set .') do (
  12.   set "str=%%a"
  13.   echo !str:~1,2!年!str:~-2!月  %%a%%b最大
  14. ))>b.txt
复制代码

TOP

返回列表