Board logo

标题: 请教,命令行中如何过滤百分号 [打印本页]

作者: kuixuan     时间: 2010-7-1 15:49    标题: 请教,命令行中如何过滤百分号

@echo off
set abc=123
set /p xx=enter:
set "xx=%xx:"=%"
echo %xx%
pause

【set "xx=%xx:"=%"】代码的意思是将【引号】过滤掉
若在[enter]处输入:%abc%
代码的执行结果是显示了——[%abc%]

但现在我需要将【百分号】给过滤掉

即代码的执行结果变为在屏幕上显示[abc],也就是说,先前输入的%abc%这一行中的[%]百分号是被删除了

于是我这样修改了代码——set "xx=%xx:%=%"

可是却出错了,那么应该如何实现过滤掉【百分号】呢

希望大家能够帮我,谢谢

[ Last edited by kuixuan on 2010-7-1 at 15:58 ]
作者: Lin7uan     时间: 2010-7-2 01:00
我也是个新手,能不能具体解释一下
set "xx=%xx:"=%"
这句话?
作者: HAT     时间: 2010-7-2 13:09    标题: Re 2 楼

set命令的字符串替换功能
作者: pdanniel66     时间: 2010-7-3 05:19    标题: Re 2 楼

Test1 :
@echo off
set abc=123
set /p xx=enter:
set "xx=%xx:"=%"
echo %xx%
pause
执行结果如下:
enter:"aa
aa
请按任意键继续 . . .
Test2 :
@echo off
set abc=123
set /p xx=enter:
set "xx=%xx:(=%"
echo %xx%
pause

执行结果如下:
enter: (aa
aa
请按任意键继续 . . .
作者: kuixuan     时间: 2010-7-3 23:46
好像变成教程帖了,但是就没人会么