Board logo

标题: 求助,如何删除变量里的指定的字符 [打印本页]

作者: tangz     时间: 2006-11-8 03:13    标题: 求助,如何删除变量里的指定的字符

我用for /f从外部文件读取数据,%%j的值为00-e0-4c-88-88-ee。想去掉其中的-,修改%%j的值为00e04c8888ee。请为该如何写脚本?谢谢。
作者: redtek     时间: 2006-11-8 04:06
删除变量中指定的字符就相当于用一个“空”字符即""来替换掉指定内容~:)

如何来替换文本中的字符
http://www.cn-dos.net/forum/view ... highlight=%E2%80%9C

详见贴子第五楼(你照抄并把字串改成你需要的就行了)较为通用的方法:)


如果想各种字串与变量应用的方法都熟悉一下,见下面贴子中的索引:
http://www.cn-dos.net/forum/viewthread.php?tid=24549&fpage=1

[ Last edited by redtek on 2006-11-8 at 04:08 AM ]
作者: 不得不爱     时间: 2006-11-8 04:51
set/?
作者: lxmxn     时间: 2006-11-8 05:00

set a=%%j
echo %a:-=%

作者: zerostudy     时间: 2006-11-8 05:22
楼上的讲讲为什么%a:-=%可以除去全部-啊?可以说说用法吗?
作者: lxmxn     时间: 2006-11-8 05:51

  %a:x=y%的作用是:将变量 "a" 中包含的所有 "x" 都换成 "y" ,而上例中等号(=)后面没有字符,就是替换成空值(不是空格),这就相当于将 "-" 删除了。

作者: zerocq     时间: 2006-11-8 07:10
for /f里的delims=添加一个-号
然后%%j就变成%%j-%%k-%%l-%%m
00e04c8888ee就是%%j%%k%%l%%m
作者: redtek     时间: 2006-11-8 07:23
真是人多力量大:)zerocq兄又是一种方法,哈哈……
可惜俺今天的分儿全都都加完了:(
作者: honhaizh     时间: 2006-11-16 20:32
高,实在是高!
作者: vkill     时间: 2006-11-17 01:40
文件中的替换我喜欢用sed
作者: hxuan999     时间: 2006-11-23 02:54
我想CMD也就只有这两个方法了吧.高手们谁还可以想出来第三种呀,不用第三方工具的.
作者: electronixtar     时间: 2006-11-23 07:03


  Quote:
可惜俺今天的分儿全都都加完了:(

我来帮你加
作者: redtek     时间: 2006-11-23 07:08
哈哈……怎么加分选择只能是 1、3、5、7、9……原来的+2分的选项怎么没了?