2013-05-20 24 views
0

如何增加字符串中int的值?增加bat文件中字符串的數量?

說我有foo-815酒吧。我想有foo-815酒吧。 foo和bar可以是常量(儘管如果bar可以是未知變量,那將是更可取的),而815是一個變量。這是一個3位數的數字,因此foo-123-bar會返回foo-124-bar。

+0

看看「設置」與表達式和「for/l在('字符串')」 –

回答

3

例子:

@echo off 
set "string=foo-123-bar" 
for /f "tokens=1-3 delims=-" %%i in ("%string%") do (
    set "pre=%%i" 
    set /a number=%%j+1 
    set "post=%%k" 
) 
set "string=%pre%-%number%-%post%" 
echo %string% 

..輸出爲:

foo-124-bar 
+0

是的它的作品,謝謝。最後一件事,是否可以保持數字的位數?這樣10會是010,3會變成003?謝謝 – Car981

+0

是'set'number = 00%number:〜-3%'' – Endoro

+0

如何使它成爲函數?所以,也許我可以寫set string = f string – Car981

0

這應該讓你開始...你可能必須把這個根據自己的需要在一個循環中。

@echo off 
set myFoo=foo- 
set myBar=-bar 
set /a myIncrementor=123 
echo %myFoo%%myIncrementor%%myBar% 
set /a myIncrementor+=1 
echo %myFoo%%myIncrementor%%myBar%