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

[文本处理] 追问,批处理如何删除指定范围内容文本。新问题!

本帖最后由 lateol 于 2012-11-15 23:55 编辑

详细参考http://www.bathome.net/thread-20111-1-2.html
这是 CrLf 提供的代码:
  1. @set @n=0//&md new&&(for %%a in (*.txt) do cscript.exe -nologo -e:jscript "%~f0"<"%%a">"new\%%a")&pause&exit/b
  2. WScript.Echo(WScript.StdIn.ReadAll().replace(/M05\r?\nM09\r?\nM30\r?\n\%\r?\n\%/g,''))
复制代码
非常感谢他们的帮助。
本人新手,只会运用大家提供的代码,像很多命令语句与使用方法还是在磨叽学习当中,感谢大家的热心帮助!
在下新问题:
1.在语句中添加要处理的文件路径,如当前目录的 abc文件夹内所有txt。

2.以上代码能删除的字符如下:
M05
M09
M30
%
%
现在在多个文本里,还有新的如以下字符
M5
M9
G91Z160.
M30
%
%

M09
M05
G91Z80.
M30
%
%
==========分割线======================
如何在一语句代码中加入以上数据,从而达到通用批处理的目的?
或使用判断语句,当在某个文本中存在以上字符 则进行相应命令处理。

之前我尝试过愚蠢的简单方法这么写:
  1. @set @n=0//&md new&&(for %%a in (*.txt) do cscript.exe -nologo -e:jscript "%~f0"<"%%a">"new\%%a")&pause&exit/b
  2. WScript.Echo(WScript.StdIn.ReadAll().replace(/M05\r?\nM09\r?\nM30\r?\n\%\r?\n\%/g,''))
  3. WScript.Echo(WScript.StdIn.ReadAll().replace(/M5\r?\nM9\r?\nG91Z160.\r?\nM30\r?\n\%\r?\n\%/g,''))
  4. WScript.Echo(WScript.StdIn.ReadAll().replace(/M09\r?\nM05\r?\nG91Z80.\r?\nM30\r?\n\%\r?\n\%/g,''))
复制代码
但是就见第二条命令有效。

返回列表