找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: lzyecho

[文本处理] 批处理删除多个txt中的不同数字组合

[复制链接]
发表于 2014-1-17 07:56:54 | 显示全部楼层
本帖最后由 xxpinqz 于 2014-1-17 08:04 编辑

回复 15# lzyecho
大概就7楼那位的解释。
获取换行符号需要转义,所以用^加两空行来定义,你记住这写法就行了。

第一个FOR语句是为了替换你文本中的&#符号为换行符,(不过这里要注意,虽然实际上已经替换了,但是直接输出的话还是一行,所以写入到临时文件tmp)

因为你源文本中一行可能包含多组&#符号,所以在每一行替换后,多输出一行##来区分,否则写入到TMP后你看不出你源文档哪行是哪行的。

第二个for,(这里写法也可用set直接把;之前替空),然后用##这个标志来区别临时文档TMP中的哪些行需要拼接成源文本的一行(意思就是碰到##,则之前的内容全输出为一行)

至于两个echo,则因为,一个用来对set/p 换行,一个是你源文件每行之间有空一行。

你要看清楚,则删除第15行代码del tmp  ,然后运行一遍后打开tmp这个文件对照看下就懂了。
 楼主| 发表于 2014-1-17 12:43:50 | 显示全部楼层
回复 16# xxpinqz


    这就明白了,得多看,多揣摩体会。再谢xxpinqz的更细致解说。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 23:58 , Processed in 0.025319 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表