Board logo

标题: [文本处理] 批处理如何在文本中能使重复字段后面自动添加序号? [打印本页]

作者: qdfeng    时间: 2010-12-6 21:53     标题: 批处理如何在文本中能使重复字段后面自动添加序号?

有这样一个文本文件:
a
a
b
c
a
c
b
如何能够使用批处理文件使该内容变成:
a01
a02
b01
c01
a03
b02
请各位老大指点,谢谢了。
作者: hanyeguxing    时间: 2010-12-6 22:09

  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "usebackq delims=" %%a in ("1.txt") do (
  3.         set/a #%%a=!#%%a!+1
  4.         if !#%%a! leq 9 (set n=0!#%%a!) else (set n=!#%%a!)
  5.         echo %%a!n!
  6. ))>"1_txt"
复制代码

如果重复不超过99次,则可以:
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "usebackq delims=" %%a in ("1.txt") do (
  3.         set/a #%%a=!#%%a!+1
  4.         set n=0!#%%a!
  5.         echo %%a!n:~-2!
  6. ))>"1_txt"
复制代码

[ 本帖最后由 hanyeguxing 于 2010-12-6 22:10 编辑 ]
作者: qdfeng    时间: 2010-12-6 22:11

非常感谢,不愧高手啊




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2