|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『楼 主』:
怎样替换文本的字符串(请肩膀上有星的都来看看)[已结]
怎么样替换文本中的字符串
比如说,
*:\GHOSTSYS
(*代表任意字符,可替换的字符)
我要寻找:\GHOSTSYS,不管*的数字是什么,我要替换它为F。
请高手指教
[ Last edited by hbby on 2007-9-5 at 01:57 AM ]
|
|
2007-8-30 20:36 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
2 楼』:
try this one:
Quote: | C:\>set a=*:\GHOSTSYS
C:\>set b=F%a:~-10%
C:\>echo %b%
F:\GHOSTSYS |
|
|
|
2007-8-30 20:48 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『第
3 楼』:
老哥,*:\GHOSTSYS是在一个文本文件里面,*号是任意字母,如何替换,还请明示,谢谢!
文本内容如下:
IF NOT EXIST D:\GHOSTSYS\NUL MD D:\GHOSTSYS
IF NOT EXIST E:\GHOSTSYS\NUL MD E:\GHOSTSYS
或者是其他字母,*是个变量
[ Last edited by hbby on 2007-8-30 at 08:55 PM ]
|
|
2007-8-30 20:53 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『第
4 楼』:
我顶下,请有思路的朋友帮忙看看,谢谢
|
|
2007-8-31 15:45 |
|
|
slore
铂金会员
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
5 楼』:
把A到Z都替换一边。。没有其他的情况了吧?
|
|
2007-8-31 16:24 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
|
2007-8-31 17:15 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
7 楼』:
//那代码多么不简练啊
两个for循环应该可以搞定了
刚才试着写了一下
发现变量嵌套的地方老是有问题
看来要想融汇贯通变量嵌套还需要时日啊
等待学习高人的代码
|
|
2007-8-31 17:58 |
|
|
ccwan
金牌会员
积分 2725
发帖 1160
注册 2006-9-23 来自 河北廊坊
状态 离线
|
『第
8 楼』:
sed "s/[A-Z]:/F:/g" 1.txt
|
三人行,必有吾师焉。 学然后知不足,教然后知困,然后能自强也。 |
|
2007-8-31 18:16 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『第
9 楼』:
最好用系统自己的命令,向各位高手学习!
|
|
2007-8-31 18:53 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『第
10 楼』:
我用以下命令行只能替换指定代码,不能替换变量,高手看看怎么修改!
@echo off
set /p a=请输入驱动器号(不包含:):
setlocal enabledelayedexpansion
for /f "tokens=*" %%i in (1.txt) do set "n=%%i"&&set n=!n:d:\GHOSTSYS=%a%:\GHOSTSYS!&&echo !n!>>2.txt
|
|
2007-8-31 18:54 |
|
|
slore
铂金会员
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
11 楼』:
用个for
然后SET一个A-Z的字符串……
然后一个个推进FOR
|
|
2007-8-31 20:24 |
|
|
ccwan
金牌会员
积分 2725
发帖 1160
注册 2006-9-23 来自 河北廊坊
状态 离线
|
『第
12 楼』:
当你向前走一步就可以到达目的地的时候,你也可以选择向后转,绕地球一周再来。
这样,你看到了以前从所未见的美景,也因此浪费了自己的青春和其它美好的东西。
个中利弊,只有自己斟酌了。
|
三人行,必有吾师焉。 学然后知不足,教然后知困,然后能自强也。 |
|
2007-9-1 08:06 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『第
13 楼』:
Quote: | Originally posted by slore at 2007-8-31 20:24:
用个for
然后SET一个A-Z的字符串……
然后一个个推进FOR |
|
具体点,代码应该怎么写呀?
|
|
2007-9-1 09:37 |
|
|
slore
铂金会员
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
14 楼』:
@echo off&&setlocal enabledelayedexpansion
Set DriverName=ABCDEFGH
for /l %%i in (0,1,7) do echo !DriverName:~%%i,1!
pause
|
|
2007-9-1 09:54 |
|
|
hbby
中级用户
积分 220
发帖 99
注册 2005-8-16
状态 离线
|
『第
15 楼』:
好象还是不行哦,能再具体点吗?谢谢
|
|
2007-9-1 20:27 |
|