Board logo

标题: [文本处理] [已解决]批处理替换后去空行 [打印本页]

作者: w1983912    时间: 2010-11-29 19:24     标题: [已解决]批处理替换后去空行

a.TXT文本内容为:
游戏
游戏 123
游戏 a
youxi 123 游戏
游戏 打拳

去行变成带有英文逗号的b.txt:
游戏,游戏 123,游戏 a,youxi 123 youxi,游戏 打拳

先谢谢 各位朋友的回答

[ 本帖最后由 w1983912 于 2010-11-29 21:58 编辑 ]
作者: hanyeguxing    时间: 2010-11-29 20:18

  1. @echo off
  2. (for /f "delims=" %%a in (a.txt) do (
  3.           if defined a set/p=,<nul
  4.           set/p"=%%a"<nul
  5.           set a==
  6.           )
  7. )>a_.txt
  8. del /q a.txt
  9. ren a_.txt a.txt
复制代码

[ 本帖最后由 hanyeguxing 于 2010-11-29 20:22 编辑 ]
作者: w1983912    时间: 2010-11-29 21:09     标题: 回复 2楼 的帖子

谢谢你 已经解决   怪我没写清楚  没想到啊 但是新问题是 如何能每10行变成一行这样的呢?

1 al
2 b5
3 a游戏
4 a 游戏
5 a有
6 cc啊
7 axx
8 bbb
9 oxo
10 aenen 恩
11 ax有
12 a哦
等等等等  有N行

变成这样 :
每10行变成一行,最后变成的一行 只有9个英文逗号哟

1 al,2 b5,3 a游戏,4 a 游戏,5 a有,6 cc啊,7 axx,8 bbb,9 oxo,10 aenen 恩
11 ax有,12 a哦

谢谢楼上的朋友

[ 本帖最后由 w1983912 于 2010-11-29 21:11 编辑 ]
作者: hanyeguxing    时间: 2010-11-29 21:39

  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%a in (a.txt) do (
  3.           if defined n if "!n:~-1!"=="0" (echo/) else set/p=,<nul
  4.           set/p"=%%a"<nul
  5.           set/a n+=1
  6.           )
  7. )>a_.txt
  8. del /q a.txt
  9. ren a_.txt a.txt
复制代码

[ 本帖最后由 hanyeguxing 于 2010-11-29 22:12 编辑 ]
作者: w1983912    时间: 2010-11-29 21:58     标题: 回复 4楼 的帖子

OK 非常牛的代码  谢谢你




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