中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 22:31
48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何去除文本中所有空格和空行(已解)
可打印版本  1,482 / 6
第1楼 bat-zw 发表于 2008-03-31 23:32
金牌会员 发帖 1,276 积分 3,105
如何去除文本中所有空格和空行(已解)
===============================================
提示:********解决方案见三楼********
有a.txt,内容如下:

要通过批处理生成b.txt,内容如下:

我写了段代码,仅能处理到如下程度,望高人支招啊。



[ Last edited by zw19750516 on 2008-4-1 at 12:20 AM ]
第2楼 abcd 发表于 2008-03-31 23:48
银牌会员 发帖 739 积分 1,436
======= ^^^^^****&&&&&&&~!@#$%^&*(():=   
gjfdgkjk 'g

不需要去掉吗?
第3楼 26933062 发表于 2008-03-31 23:53
银牌会员 发帖 879 积分 2,268
:
第4楼 bat-zw 发表于 2008-03-31 23:55
金牌会员 发帖 1,276 积分 3,105
看来都是汉字输入法的错!!!
如果是纯英名下生成的a.txt,我的代码应该是没问题的(测试了)。
但如果空格是汉字输入状态下生成的就挂了,是不是处理不了啊。
第5楼 bat-zw 发表于 2008-04-01 00:03
金牌会员 发帖 1,276 积分 3,105
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:  ...

是不是应该改为
但即使这样处理的结果仍有个空行在如下:
第6楼 26933062 发表于 2008-04-01 00:04
银牌会员 发帖 879 积分 2,268
3楼代码可以处理全角空格啊!
第7楼 bat-zw 发表于 2008-04-01 00:18
金牌会员 发帖 1,276 积分 3,105
Originally posted by 26933062 at 2008-4-1 00:04:
3楼代码可以处理全角空格啊!

测试成功,高人,自愧弗如啊!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023