中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
« [1] [2] »
作者:
标题: 如何实现批量替换? 上一主题 | 下一主题
xipx
初级用户




积分 62
发帖 25
注册 2008-5-27
状态 离线
『第 16 楼』:  



  Quote:
Originally posted by zw19750516 at 2008-5-28 10:05 AM:

兄弟的这个代码远胜于我的,是我又犯了效率错误,同时也想复杂了(本来就是一个简单的连续替换)请楼主使用此代码进行替换处理。

[ Last edited by zw19750516 on 2008-5-28 at 10:11 AM ]

呵呵,我是初学者,都看看

2008-5-28 10:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 17 楼』:  

写好一个一看前面都有高的啊  还是发出来了
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
    set str=%%i
    set str=!str:^<= !
    set str=!str:^>= !
    for %%a in (!str!) do for /f "tokens=1* delims=<>" %%x in ('findstr "<%%a>" b.txt') do set str=!str:%%x=%%y!
    set str=!str: =!
    echo !str!
    )
pause




简单!简单!再简单!
2008-5-28 13:39
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xipx
初级用户




积分 62
发帖 25
注册 2008-5-27
状态 离线
『第 18 楼』:  



  Quote:
Originally posted by pusofalse at 2008-5-28 03:52 AM:
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%a in (a.txt) do (
        set str=%%a
        call :lp
)
pause>nul&goto :eof


:lp
for /f "tokens=1,2" %%a in  ...

巨慢的说,那个对照表文件里有6000多行,正文文本里有多少我不知道了,但是光纯文本就有15MB作用,这样的速度恐怕要开机1个月才完事儿

2008-6-29 16:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: