中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 06:27
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]如何替换文本中的字符呢?包含特殊字符!
可打印版本  1,270 / 9
第1楼 maxfull 发表于 2007-06-29 13:47
中级用户 发帖 120 积分 360
[求助]如何替换文本中的字符呢?包含特殊字符!
我想实现的是这样的,在不使用外部命令的情况下
首先从 c:\aa.txt 中读取第一行的内容给变量 %aaa% (这个变量的内容可能包含所有未知的特殊字符如: . , / \ ] [ < > ! @ # $ % ^ ^ & * ( ) 等未知的assic字符) 然后将 c:\bb.txt 中包含的 %aaa% 变量的内容替换为 abcdef 如果不包含特殊字符我会写,但是包含了特殊字符就不知道怎么写了,希望大家帮忙,
第2楼 wudixin96 发表于 2007-06-29 14:13
银牌会员 发帖 931 积分 1,928
论坛里有类似的吧。

具体问题具体分析。

能把aa和bb中内容帖上来吗?
第3楼 maxfull 发表于 2007-06-29 14:18
中级用户 发帖 120 积分 360
由于 bb.txt 中 已经包含了 aa.txt 中的第一行,但是 aa.txt 的第一行是不固定的,动态的。
第4楼 wudixin96 发表于 2007-06-29 14:33
银牌会员 发帖 931 积分 1,928
似乎和特殊字符没什么关系吧?似乎特殊字符中不包含=就行了。


是不是这个意思啦?
第5楼 maxfull 发表于 2007-06-29 15:20
中级用户 发帖 120 积分 360
请问下 setlocal enabledelayedexpansion
这个是什么意思呢
第6楼 wudixin96 发表于 2007-06-29 15:22
银牌会员 发帖 931 积分 1,928
啊?这是启用延迟啊

在cmd里输入
setlocal /?
有详细点的说明。更详细的解释请到论坛里搜索。
第7楼 maxfull 发表于 2007-06-29 15:24
中级用户 发帖 120 积分 360
刚刚测试了下可以。。
如果我想要在 变量 aaa中在前面加入 <abc>可以实现吗?加入后再替换
第8楼 wudixin96 发表于 2007-06-29 15:27
银牌会员 发帖 931 积分 1,928
可以啊,只是都是整句替换的。加不加有什么区别吗?
第9楼 HAT 发表于 2007-06-29 15:42
版主 发帖 5,017 积分 9,023
//似乎和特殊字符没什么关系吧?似乎特殊字符中不包含=就行了。

把==改为equ能否解决等号的问题呢?
第10楼 wudixin96 发表于 2007-06-29 15:52
银牌会员 发帖 931 积分 1,928
不完全是这个的问题。用set的时候=号有特殊意义
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023