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

[文本处理] 批处理过滤字符串中的“=”号,谁有更好的办法?

我的是这样:
  1. @echo off&setlocal enabledelayedexpansion
  2. del b.txt 2>nul
  3. for /f "delims=" %%i in (a.txt) do (
  4. set str=%%i
  5.         for /f "tokens=1,2,3,4,5,6,7,8 delims==" %%a in ("!str!") do (
  6.                 echo %%a%%b%%c%%d%%e%%f%%g%%h>>b.txt
  7. )
  8. )
  9. type b.txt
  10. pause
复制代码
时光荏苒||新陈代谢&&涛声依旧||本性难移

sed                                

TOP

本帖最后由 QIAOXINGXING 于 2012-9-7 23:06 编辑

http://www.bathome.net/thread-5548-1-1.html
  1. @echo off
  2. set "str=22=44=44=33==11=00=99=="
  3. :lp
  4. for /f "tokens=1* delims==" %%a in ("%str%") do (
  5.   set "str=%%a%%b"
  6.   if "%%b" neq "" goto lp
  7. )
  8. echo %str%
  9. pause
复制代码

TOP

个人比较倾向与其他脚本混编,优势互补
  1. @echo off
  2. echo WScript.Echo Replace(WScript.Stdin.ReadAll,"=","")>r.vbs
  3. cscript /nologo r.vbs<%0
  4. pause
  5. =:=:=:=:=
  6. =:=:=:=
  7. =:=:=
  8. =:=
  9. =
复制代码
批的简洁与其他脚本完备的函数库是绝配~

TOP

返回列表