Board logo

标题: 关于文本特殊字符替换问题 [打印本页]

作者: xyzup     时间: 2007-1-10 14:08    标题: 关于文本特殊字符替换问题

有一文本,内容如下:
http%3A%2F%2Fxxx.net%2Fxxx.htm

我想把所有的"%3A"转换成 ":"
                  "%2F"转换成 "/"
得到:http://xxx.net/xxx.htm


参考论坛里的帖子
http://www.cn-dos.net/forum/viewthread.php?tid=26277&fpage=1&highlight=%E6%96%87%E6%9C%AC###
set var=%var:%2F=/% 替换语句 失败了

请教这些算不算特殊字符??
也看了几篇特殊字符替换的帖:
http://www.cn-dos.net/forum/viewthread.php?tid=25692&fpage=1&highlight=%E6%9B%BF%E6%8D%A2
http://www.cn-dos.net/forum/viewthread.php?tid=22245&fpage=1&highlight=%E6%9B%BF%E6%8D%A2
结果是看不懂~!!
请问该怎么写?
作者: jmz573515     时间: 2007-1-10 22:53
用VBS可以写成这样
A= REPLACE("http%3A%2F%2Fxxx.net%2Fxxx.htm","%3A",":")
MSGBOX REPLACE(A,"%2F","/")

作者: ccwan     时间: 2007-1-10 23:41
批处理代码如下:
@echo off&setlocal enabledelayedexpansion
for /f %%i in (1.txt) do set var=%%i
set var=!var:%%3A=:!
set var=!var:%%2F=/!
echo !var!
pause
[ Last edited by ccwan on 2007-1-10 at 11:57 PM ]
作者: vkill     时间: 2007-1-11 01:11
sed
作者: ccwan     时间: 2007-1-11 01:13
呵呵,vkill干嘛不直接写出代码?
作者: xyzup     时间: 2007-1-12 08:23


  Quote:
Originally posted by ccwan at 2007-1-10 10:41 AM:
批处理代码如下:
@echo off&setlocal enabledelayedexpansion
for /f %%i in (1.txt) do set var=%%i
set var=!var:%%3A=:!
set var=!var:%%2F=/!
echo !var!
pause
[ Last  ...

谢谢!!
作者: xyzup     时间: 2007-1-12 08:30


  Quote:
Originally posted by ccwan at 2007-1-10 12:13 PM:
呵呵,vkill干嘛不直接写出代码?

前两天发了帖.没时间上来看..
  谢谢指教....:)

关于sed这些外部的命令...
因为用BAT本是为了方便.,..windows自带的..每一台机都有..
而改用别的,,功能或许更强大..但还是失去了方便的初衷..(因为我不是DOS的fans)

但是还是谢谢VKILL兄的关注