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

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

[复制链接]
发表于 2012-6-3 02:29:06 | 显示全部楼层 |阅读模式
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
请会的朋友帮忙 谢谢~
发表于 2012-6-3 13:16:21 | 显示全部楼层
本帖最后由 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
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 03:28 , Processed in 0.009033 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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