中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
作者:
标题: 新的删除空格问题?? 上一主题 | 下一主题
amio
中级用户





积分 206
发帖 93
注册 2007-8-16
状态 离线
『楼 主』:  新的删除空格问题?? 使用 LLM 解释/回答一下

----------------------
aaa bbb
[abcd]
aaa bbb

cc dd
-------------------------
处理后变为
-----------------------
aaa bbb

[abcd]
aaa bbb
cc dd
---------------------
字符中间空格不要删除,并且让带有 [] 的 上面空一行


2008-5-29 20:00
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下


@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (1.txt) do (
set str=%%i
if "!str!" equ "" (
echo.&echo !str!
) else (
echo !str!
)
)
pause>nul




批处理之家新域名:www.bathome.net
2008-5-29 20:17
查看资料  发送邮件  发短消息  网志  OICQ (841615149)  编辑帖子  回复  引用回复
amio
中级用户





积分 206
发帖 93
注册 2007-8-16
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下

Originally posted by zw19750516 at 2008-5-29 08:17 PM:

@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (1.txt) do (
set str=%%i
if "!str!" equ "" (
echo.&echo !str ...




能不能把 "" 换成 万能的 因为 还有 之类的

获取 "


2008-5-29 20:26
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
WANKOILZ
初级用户





积分 198
发帖 89
注册 2007-9-6
来自 重庆
状态 离线
『第 4 楼』:   使用 LLM 解释/回答一下

我发现一个更简洁的:
@echo off
for /f "delims=" %%i in (1.txt) do (
if %%i== echo.
echo %%i
)
pause>nul


2008-5-29 20:27
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 5 楼』:   使用 LLM 解释/回答一下


@echo off
for /f "delims=" %%a in (a.txt) do (
if "%%a"=="" echo.
echo %%a
)
pause




致精致简!
2008-5-29 20:30
查看资料  发短消息  网志   编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 6 楼』:   使用 LLM 解释/回答一下

晕,发帖后发现我以是5楼了,还以为是在3楼呢?
和4楼的一模一样。哈哈。。。




致精致简!
2008-5-29 20:32
查看资料  发短消息  网志   编辑帖子  回复  引用回复
WANKOILZ
初级用户





积分 198
发帖 89
注册 2007-9-6
来自 重庆
状态 离线
『第 7 楼』:   使用 LLM 解释/回答一下

我的还少了四个引号,呵呵........


2008-5-29 20:41
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
amio
中级用户





积分 206
发帖 93
注册 2007-8-16
状态 离线
『第 8 楼』:   使用 LLM 解释/回答一下

[abcd] 这个不光是一个啊 还有 [efgh] [ijk] 之类的

如果要有几十个 [] 一个个 添加太麻烦啊


2008-5-29 20:47
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
WANKOILZ
初级用户





积分 198
发帖 89
注册 2007-9-6
来自 重庆
状态 离线
『第 9 楼』:   使用 LLM 解释/回答一下

楼上说的这种情况还要具体情况具体分析才行。


2008-5-29 20:51
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
amio
中级用户





积分 206
发帖 93
注册 2007-8-16
状态 离线
『第 10 楼』:   使用 LLM 解释/回答一下

不能就以 [ 做判断吗 如果有[ 就在上面空一行


2008-5-29 21:16
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
WANKOILZ
初级用户





积分 198
发帖 89
注册 2007-9-6
来自 重庆
状态 离线
『第 11 楼』:   使用 LLM 解释/回答一下

如果行的第一个字符就是@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (1.txt) do (
set "str=%%i"
if "!str:~0,1!"=="




Last edited by WANKOILZ on 2008-5-29 at 09:22 PM ]


   此帖被 +2 点积分    点击查看详情   
评分人:【 amio 分数: +2  时间:2008-5-29 21:37


2008-5-29 21:20
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
zqz0012005
中级用户




积分 297
发帖 135
注册 2006-10-21
状态 离线
『第 12 楼』:   使用 LLM 解释/回答一下

@echo off
for /f "delims=" %%i in (1.txt) do (
echo %%i|findstr "^$">nul&&echo.
echo %%i
)
pause>nul




hh.exe ntcmds.chm::/ntcmds.htm
2008-5-29 21:24
查看资料  发短消息  网志  OICQ (411976538)  编辑帖子  回复  引用回复
26933062
银牌会员





积分 2268
发帖 879
注册 2006-12-19
状态 离线
『第 13 楼』:   使用 LLM 解释/回答一下

Originally posted by zqz0012005 at 2008-5-29 21:24:
@echo off
for /f "delims=" %%i in (1.txt) do (
echo %%i|findstr "^$">nul&&echo.
echo %%i
)
pause>nul

呵呵,楼上的就真的存在效率问题了。




致精致简!
2008-5-29 21:35
查看资料  发短消息  网志   编辑帖子  回复  引用回复
amio
中级用户





积分 206
发帖 93
注册 2007-8-16
状态 离线
『第 14 楼』:   使用 LLM 解释/回答一下

Originally posted by 26933062 at 2008-5-29 09:35 PM:

呵呵,楼上的就真的存在效率问题了。



那个我试 根本就不好使 。


2008-5-29 21:39
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
amio
中级用户





积分 206
发帖 93
注册 2007-8-16
状态 离线
『第 15 楼』:   使用 LLM 解释/回答一下

还有个问题

如果每行 前面有空格 也删除 ?

aaaaaaa
bbbbbbbbb
-----------------

aaaaaaa
bbbbbbbbb


2008-5-29 21:49
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: