@echo off
set a=abcdef
echo %a%
set a=%a:*cd=%
echo %a%
pause
一、这跟 ☆ 是没有关系的,* 号放在字符串前面就会把该字符串及其前面的所有字符一同进行替换。
如上面的例子,set a=%a:*cd=% 会把字符串 “cd” 及前面的 “ab” 一起替换为“空”。
二、要替换★及其后面的内容
可以利用中间变量
@echo off
setlocal enableDelayedExpansion
set a=abc★def
echo %a%
set b=%a:*★=%
set a=!a:★%b%=!
echo %a%
pause
或是用 FOR
@echo off
setlocal enableDelayedExpansion
set a=abc★def
for /f "tokens=1* delims=★" %%t in ("%a%") do set a=%%t
echo %a%
pause
Last edited by wxcute on 2008-11-27 at 17:32 ]