2013-11-03 3 views
1

가에 관해서는 정말 확신하지 못했습니다 사용하는 동안 변수 제목은해야하지만 내 문제는 무엇인지 그 나는 다음 실행하면에 refrence 또 다른

set "var=craftbukkit-1.6.4-R2.0" 
set "search=craftbukkit" 
set vnum=%var:%search%=% 
echo %vnum% 

그것은 "검색"하지만, 그것을 반환하기로 반환 버전 번호. 그러나 내가 실제 문자열로 변수를 교체 할 경우

, 그렇습니다 일 :

set "var=craftbukkit-1.6.4-R2.0" 
set vnum=%var:craftbukkit=% 
echo %vnum% 

이 내가 변수 % 검색에 refrence 어떻게 "-1.6.4-R2.0"

을 반환 %?

답변

3

사용에 결과를 할당 지연된 확장 :

setlocal EnableDelayedExpansion 
set "var=craftbukkit-1.6.4-R2.0" 
set "search=craftbukkit" 
set vnum=!var:%search%=! 
echo %vnum% 
1
CALL set vnum=%%var:*%search%=%% 

var에서 (변수 search의 내용)까지의 모든 문자를 제거해야합니다 귀하의 vnum에 플러스를 추가하고 vnum