|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『楼 主』:
如何取得指定字符后边的字符串
SET a=abcdefg\mystring
如何取得‘\’后边的字符串呢?并返回参数
|
我是菜鸟我怕谁 |
|
2007-9-29 18:04 |
|
|
wudixin96
银牌会员
积分 1928
发帖 931
注册 2007-1-6
状态 离线
|
|
2007-9-29 18:06 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
3 楼』:
不好意思,那个好象很复杂啊,不是很理解,我想要返回个参数就又就不对了
|
我是菜鸟我怕谁 |
|
2007-9-29 18:13 |
|
|
wudixin96
银牌会员
积分 1928
发帖 931
注册 2007-1-6
状态 离线
|
『第
4 楼』:
SET a=abcdefg\mystring
返回参数??什么意思????
|
|
2007-9-29 18:14 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
5 楼』:
就是echo %b%
%b%就是‘\’后边的字符,这样我就知道代码的断点了啊,知道他在哪个地方取得值了,要不一群字符看不会啊
|
我是菜鸟我怕谁 |
|
2007-9-29 18:17 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
6 楼』:
SET /P a=输入字符:
假如输入的字符是abdcddf\mastring
那么如何取的'\'后边的字符串并且显示出来
我是这个意思
|
我是菜鸟我怕谁 |
|
2007-9-29 18:25 |
|
|
wudixin96
银牌会员
积分 1928
发帖 931
注册 2007-1-6
状态 离线
|
『第
7 楼』:
SET a=abcdefg\mystring
set b=%a:*\=%
echo %b%
pause
这个意思???
|
|
2007-9-29 18:26 |
|
|
26933062
银牌会员
积分 2268
发帖 879
注册 2006-12-19
状态 离线
|
『第
8 楼』:
显示最后一级\后的内容.
@echo off
set var=abc\sss\kkkk\dkfa dskf\1212 3434
:lis
set var=%var:*\=%
set num=%var:\=%
if not "%var%"=="%num%" (goto lis) else echo %var%
pause
|
致精致简! |
|
2007-9-29 18:30 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
9 楼』:
谢谢你wudixin 你给的的确是我要的意思
也谢谢你26933062
其实我很头疼,字符串的处理用批处理做起来有时候真的是眼花缭乱啊
比如文件myfile.txt文件内容如下:
..........
..........
asdfasdfkasdf = N'sdfsdf'
..........
..........
( NAME = N'HXGL_Data', FILENAME = N'a\c\b\d\e\DATA\hxyyt',ff=gg)
lgo tho
( NAME = N'HXGL_DB', FILENAME = N'a\c\b\d\e\DATA\hxtar',uu=yy)
.......
.......
省略号是省略的内容,你们看,我想要把里面的 a\c\b\d\e 换成我输入的参数值,可是这里面的干扰字符很多,我很难判断,其实我前面问你们的那些问题就是想要解决这个问题,可是现实并不象我想得那么简单啊,你们看,里面还有一些空格,还有大小写的问题让我很头疼........无从下手,
我前面问的替换两个字符串之间的字符,你们帮我解决了,我用到这里,可是N'字符不是唯一的两个,你们看前面也有N',取FILENAME = N'和\DATA之间的字符,可是FILENAME = N'字符串有空格呀,
有什么办法能解决吗?如果我知道那两段字符所在行比如说是第7和第9行,FILENAME字符只有这两个,能解决吗?
|
我是菜鸟我怕谁 |
|
2007-9-29 19:05 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
10 楼』:
而且我要实现确实更改了文件的内容,也就是说找到指定的字符串更改后还要写回原文件,这个我也参考了你么给的方案,我以为换几个地方就可以了的,不过......
|
我是菜鸟我怕谁 |
|
2007-9-29 19:15 |
|
|
26933062
银牌会员
积分 2268
发帖 879
注册 2006-12-19
状态 离线
|
『第
11 楼』:
大致看懂了,要改的是第7行和第9行.
把你改好后的效果也发来看看,否则真不知道你要的是什么效果.
|
致精致简! |
|
2007-9-29 19:44 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
12 楼』:
不好意思我没有说清楚,假如我现在使用交互输入
set /P str=123456abcd
我要把myfile.txt文件里的这些 a\c\b\d\e 更改为我输入的字符啊,更改后文件的内容就变成了下边的了:
..........
..........
asdfasdfkasdf = N'sdfsdf'
..........
..........
( NAME = N'HXGL_Data', FILENAME = N'123456abcd\DATA\hxyyt',ff=gg)
lgo tho
( NAME = N'HXGL_DB', FILENAME = N'123456abcd\DATA\hxtar',uu=yy)
.......
.......
|
我是菜鸟我怕谁 |
|
2007-9-29 19:51 |
|
|
26933062
银牌会员
积分 2268
发帖 879
注册 2006-12-19
状态 离线
|
『第
13 楼』:
有一点要搞清楚,
是替换a\c\b\d\e为123456abcd
还是替换FILENAME = N'和\DATA之间的字符串?
|
致精致简! |
|
2007-9-29 19:58 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
14 楼』:
是替换FILENAME = N'和\DATA之间的内容啊
|
我是菜鸟我怕谁 |
|
2007-9-29 20:01 |
|
|
yyf0346
初级用户
积分 128
发帖 56
注册 2007-9-26 来自 江苏 无锡
状态 离线
|
『第
15 楼』:
这位大虾不能帮我解决吗?
有个很重要的问题,如果不是myfile.txt文件,而是mafile.sql文件也照样能用bat批处理文件做字符串的更改吗?
|
我是菜鸟我怕谁 |
|
2007-9-29 20:17 |
|