中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 17:35
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求助:查找含有特定字符串的行并替换 查看 823 回复 4
楼 主 求助:查找含有特定字符串的行并替换 发表于 2008-09-04 08:10 ·  中国 广东 深圳 宝安区 电信
中级用户
★★
积分 358
发帖 130
注册 2005-11-12 16:29
20年会员
UID 45117
状态 离线
查找含有特定字符串的行并替换
A.TXT中的某行有A字符串则整行替换为B字符串,A,B字符串中都可能有特殊字符
尽量用cmd内置的替换功能。

[ Last edited by yywd on 2008-9-4 at 10:10 AM ]
2 发表于 2008-09-04 10:11 ·  中国 广东 深圳 宝安区 电信
中级用户
★★
积分 358
发帖 130
注册 2005-11-12 16:29
20年会员
UID 45117
状态 离线
在线等呀
3 发表于 2008-09-04 12:46 ·  中国 江苏 苏州 中移铁通
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
批处理做这个挺麻烦,用vbs吧

Dim A,fso,fs
Dim fl,x
set Fso=CreateObject("Scripting.FileSystemObject")
set fs=Fso.OpenTextFile("a.txt",1) '要替换的文本
set fl=Fso.CreateTextFile("b.txt",2) '替换后的文本
A=Array("&","^","!") '这里添加你所有的特殊字符

Do While fs.AtEndOfLine <> True
call Ffunction(fs.readline) '调用函数
Loop

Function Ffunction(t) '定义函数
for each i in A
x=replace(t,i,"dos") '这里输入替换成的字符默认"dos"
t=x
next
fl.writeline x
end Function
4 发表于 2008-09-04 12:56 ·  中国 广东 深圳 宝安区 电信
中级用户
★★
积分 358
发帖 130
注册 2005-11-12 16:29
20年会员
UID 45117
状态 离线
Originally posted by huahua0919 at 2008-9-4 12:46:
批处理做这个挺麻烦,用vbs吧

Dim A,fso,fs
Dim fl,x
set Fso=CreateObject("Scripting.FileSystemObject")
set fs=Fso.OpenTextFile("a.txt",1) '要替换的文本 ...

谢谢你的回复,特定字符串不能确定呀
5 发表于 2008-09-04 13:24 ·  中国 江苏 苏州 中移铁通
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
特殊字符能有多少.有的你统计出来给我看看
写个方法给你看看,酌量添加不就行了!~
论坛跳转: