Board logo

标题: 关于替换文本内的敏感字符问题????在线等!! [打印本页]

作者: klazhen     时间: 2007-1-23 09:34    标题: 关于替换文本内的敏感字符问题????在线等!!

比如我有1.txt的文本,内容如下
@echo e 100 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00 >>tmp11
@echo e 110 B8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 >>tmp11
@echo e 120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >>tmp11
我想把里面的>>替换为^>^> 改如何用批处理的方式替换,
忘高手指点,在线等!!!
作者: vkill     时间: 2007-1-23 09:49
搜索"替换"
作者: tghksj01     时间: 2007-1-23 09:56

@ECHO %DBG% OFF
SETLOCAL ENABLEDELAYEDEXPANSION

FOR /F "TOKENS=*" %%i IN (1.TXT) DO (
                                     SET STR=%%i
                                     ECHO !STR:~0,-7!^^^^^>^^^^^>!STR:~-5,5%! >>2.TXT
                                     )

作者: klazhen     时间: 2007-1-23 09:59
3楼的朋友谢谢你,很棒,但是能不能具体讲解一下你的代码呢!
作者: tghksj01     时间: 2007-1-23 10:05
?晕~需要讲解吗?

我3楼的代码很傻的.....
关键句:
ECHO !STR:~0,-7!^^^^^>^^^^^>!STR:~-5,5%! >>2.TXT
显示  字符串倒数7个字符之前的所有字符,添加^>^>,显示倒数5后面的字符,写入2.TXT

>>不是很棘手吗??不去碰它就是了:)呵呵~代码好傻的.

[ Last edited by tghksj01 on 2007-1-22 at 09:06 PM ]
作者: lxmxn     时间: 2007-1-23 12:15
  我也来灌灌水……
@echo off&setlocal enabledelayedexpansion&set file=%random%
for /f "delims=" %%a in (1.txt) do (
        set str=%%a
        set "str=!str:>>=^>^>!"
        >>%file% echo !str!
)
start notepad %file%
exit/b


[ Last edited by lxmxn on 2007-1-22 at 11:17 PM ]
作者: tghksj01     时间: 2007-1-23 12:20
lxmxn 虽然很讨厌,不过还是要谢谢你,
set "str=!str:>>=^>^>!"
收藏了.
作者: minmin888     时间: 2007-5-8 10:44
收藏了!
作者: lililulula     时间: 2007-5-8 11:23
感觉还是用替换来的方便点!path:str1=str2!
作者: ivanwd     时间: 2007-10-23 20:50
谢谢!很好的程序!