Board logo

标题: [已解决]批处理如何删除文本里字符串与逗号间的空格 [打印本页]

作者: xparlyn     时间: 2009-12-18 00:01    标题: [已解决]批处理如何删除文本里字符串与逗号间的空格

比如说我有一个文本文件,里面的内容如下:
abc def ghi          ,ghig def ate    ,fdsfdsifsdsa
gad  eft adfsd      ,     dsa   fdsa   ,    fdjoyolkok     ,ffdsafdsl

我想删除字符串与逗号间的空格得到如下结果:
abc def ghi,ghig def ate,fdsfdsifsdsa
gad  eft adfsd,     dsa   fdsa,    fdjoyolko,ffdsafdsl

注:字符串内的空格不删除,字符串与逗号间有多少空格不定,每行有多少个逗号也不定

另注:我不想用其它工具,只想用批处理来实现

[ Last edited by xparlyn on 2009-12-18 at 22:53 ]
作者: Hanyeguxing     时间: 2009-12-18 00:48

@echo off&setlocal enabledelayedexpansion
:hanye
set n=0&set a=a.txt
for /f "delims=" %%i in ('Findstr /n ".*" %a%') do (set i=%%i
set i=!i:*:=!
echo !i: ,=,!)>>gu.xing
del /q %a%
ren gu.xing %a%
Findstr /c:" ," %a% >nul&&set n=1
if %n% == 1 (goto hanye) else echo 操作完成!&pause
说明:
1,目标源文件为a.txt。处理前请先将源文件备份。
2,对源文件中的空行保留。

[ Last edited by Hanyeguxing on 2009-12-18 at 01:01 ]
作者: xparlyn     时间: 2009-12-18 22:52
果然牛

谢谢!