Board logo

标题: [求助]关于替换指定位置字符的问题 [打印本页]

作者: wjcing     时间: 2009-3-6 15:36    标题: [求助]关于替换指定位置字符的问题

如我有一字符串是随机的,a=asdmkuyk 我现在想把a的第三位d替换成8,替换后a=as8mkuyk,请问有什么办法可以指定位置替换,谢谢。

作者: netbenton     时间: 2009-3-7 00:23
set a=asdmkuyk ::先把指定位置的字符取出(第3位): set b=%a:~2,1% ::再用得到的字符替换: call set va=%%a:%b%=8%% echo. %a% echo. %b% echo. %va% pause

作者: XiaoGuDong     时间: 2009-3-7 01:49
set a=备份\复件(2) winre\Program Files 如何由变量a得到变量b[变量b=Program Files] 当然变量a中“Program Files”前的路径不确定!

作者: wjcing     时间: 2009-3-7 02:46
Originally posted by netbenton at 2009-3-7 12:23 AM: set a=asdmkuyk ::先把指定位置的字符取出(第3位): set b=%a:~2,1% ::再用得到的字符替换: call set va=%%a:%b%=8%% echo. %a% echo. %b% echo. %va% pause
谢谢,不过我觉得你的方法不行,因为如果set a=asddkuykd 是这样呢。。我只想把第三位的d替换,这个方法是不行的。

作者: wjcing     时间: 2009-3-7 02:50
Originally posted by XiaoGuDong at 2009-3-7 01:49 AM: set a=备份\复件(2) winre\Program Files 如何由变量a得到变量b[变量b=Program Files] 当然变量a中“Program Files”前的路径不确定!
郁闷,,不明白。呵呵

作者: wjcing     时间: 2009-3-7 04:19
搞定了。 。找个折中的方法搞定了。。就是折成两个字符再合并,,不过还是希望有高手给个好点的方法。谢谢了。