在bat文件中增加字符串中的数字?

时间:2013-05-20 14:42:03

标签: windows batch-file batch-processing

如何增加字符串中int的值?

说我有foo-815-bar。我想要foo-815-bar。 foo和bar可以是常量(尽管bar可以是未知变量,但最好是),而815是变量。这是一个3位数的增量,因此foo-123-bar将返回foo-124-bar。

2 个答案:

答案 0 :(得分: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

答案 1 :(得分: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%