我有一个奇怪的问题,我试图解决YouTube上的问题。
目标/预期功能: [检查字符串并确定是否存在重复的数字。 我遇到这样一种情况:用户输入了一个字符串,我的程序将其拆分为数字变量,每个变量都有一个字符。当分配新字符时,将检查所有字符,然后从其下方的数字开始。
我的问题: 我的比较命令以一种奇怪的方式设置,我不确定如何解决。
if %%%temp%%%==%%%temp2%%% goto win
我想造成的效果是...Temp/temp2 被评估为它们的数值,然后留下这样的东西......
if %%1%%==%%2%% goto win
这简化了...
if %1%==%2% goto win
然后,这应该比较字符串中的这两个点。但是,此命令的计算结果为百分号之间的数字。我该怎么办?
完整代码:
@echo off
set /p string=
set /a num=0
call set %num%=%%string:~%num%,1%%
set /a num=1
:re2
call set %num%=%%string:~%num%,1%%
set /a temp=%num%-1
set temp2=%num%
:re3
if %%%temp%%%==%%%temp2%%% goto win
if %temp%==0 goto re4
set /a temp=%temp%-1
goto re3
:re4
set /a num=%num%+1
goto re2
:win
[解决方案]
我找到了一种通过变量调用我想要的东西的方法,我将命令放在一个变量中,然后在它自己的行上键入变量的"调用"。
设置 CCC=if %%%aa%%%==%%%bbb%%% goto win回声 %ccc%