标题: 如何去除文本中所有空格和空行(已解)
[打印本页]
作者: bat-zw
时间: 2008-3-31 23:32
标题: 如何去除文本中所有空格和空行(已解)
===============================================
提示:********解决方案见三楼********
有a.txt,内容如下:
a d b d e jf ;k jdpopfd fkdlk ;
fksffjkla jsklfjkla j ksaljfkl jklsaj
ff f fff ffff ff ffff fff cccc cccccc ccc ccccccc
ddddd dq dqd fdkfjdk fjdskljg k;
======= ^^^^^****&&&&&&& ~!@#$%^&*(() : =
gjfdgkjk 'g
要通过批处理生成b.txt,内容如下:
adbdejf;kjdpopfdfkdlk;
fksffjklajsklfjklajksaljfkljklsaj
fffffffffffffffffffcccccccccccccccccccc
ddddddqdqdfdkfjdkfjdskljgk;
======= ^^^^^****&&&&&&&~!@#$%^&*(():=
gjfdgkjk 'g
我写了段代码,仅能处理到如下程度,望高人支招啊。
@echo off
if exist b.txt del b.txt
for /f "delims=" %%i in ('findstr .* a.txt') do (
set var=%%i
setlocal enabledelayedexpansion
if not "!var!"=="!var: =!" echo !var: =! >>b.txt
endlocal
)
start b.txt
adbdejf;kjdpopfdfkdlk;
fksffjklajsklfjklajksaljfkljklsaj
ff f fff ffff ff ffff fffcccc cccccc ccc ccccccc
ddddddqdqdfdkfjdkfjdskljgk;
=======^^^^^****&&&&&&&~!@#$%^&*(() :=
gjfdgkjk'g
[
Last edited by zw19750516 on 2008-4-1 at 12:20 AM ]
作者: abcd
时间: 2008-3-31 23:48
======= ^^^^^****&&&&&&&~!@#$%^&*(():=
gjfdgkjk 'g
不需要去掉吗?
作者: 26933062
时间: 2008-3-31 23:53
:
@echo off
for /f "delims=" %%a in (a.txt) do (
set var=%%a
setlocal enabledelayedexpansion
set var=!var: =!
if not "!var!"=="" set var=!var: =!
if not "!var!"=="" echo !var!
endlocal
)
pause
作者: bat-zw
时间: 2008-3-31 23:55
标题: 看来都是汉字输入法的错!!!
如果是纯英名下生成的a.txt,我的代码应该是没问题的(测试了)。
但如果空格是汉字输入状态下生成的就挂了,是不是处理不了啊。
作者: bat-zw
时间: 2008-4-1 00:03
Quote: |
Originally posted by 26933062 at 2008-3-31 23:53:
@echo off
for /f "delims=" %%a in (a.txt) do (
set var=%%a
setlocal enabledelayedexpansion
set var=!var: =!
if not "!var!"=="" set var=!var: ... |
|
是不是应该改为
@echo off
for /f "delims=" %%a in (a.txt) do (
set var=%%a
setlocal enabledelayedexpansion
set var=!var: =!
if not "!var!"=="" set var=!var: =!
echo.!var! >>b.txt
endlocal
)
但即使这样处理的结果仍有个空行在如下:
adbdejf;kjdpopfdfkdlk;
fksffjklajsklfjklajksaljfkljklsaj
fffffffffffffffffffcccccccccccccccccccc
ddddddqdqdfdkfjdkfjdskljgk;
=======^^^^^****&&&&&&&~!@#$%^&*(():=
gjfdgkjk'g
作者: 26933062
时间: 2008-4-1 00:04
3楼代码可以处理全角空格啊!
作者: bat-zw
时间: 2008-4-1 00:18
Quote: |
Originally posted by 26933062 at 2008-4-1 00:04:
3楼代码可以处理全角空格啊! |
|
测试成功,高人,自愧弗如啊!