Пакетный, если X или Y оператор проблемы - PullRequest
0 голосов
/ 08 января 2019
if %input%==0 || 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || "A" || "B" || "C" || "D" || "E" || "F" goto Text

Я попытался использовать эту строку так, чтобы, если% input% было 0,1,2,3,4,5,6,7,8,9, A, B, C, D, E или F, то было бы Текст, но он просто закрывает подсказку (после нее ничего нет). Как я могу заставить это делать то, что я хочу?

1 Ответ

0 голосов
/ 08 января 2019

Как указано ниже в комментариях к вашему сообщению или к этому сообщению - Double Pipes; || выполняет следующую команду только в том случае, если уровень ошибки предыдущей команды НЕ равен 0 (или, другими словами, происходит сбой).

Простой способ исправить это сообщение - использовать for loop, чтобы просмотреть несколько переменных и сравнить их в операторе IF с вашей строкой. Если есть совпадение, он будет использовать команду GOTO, указанную в вашем сообщении. Если совпадений не найдено, цикл завершится. Помните, что команда ELSE может использоваться для перенаправления результата без совпадения. if "%input%"==%%A (goto Text) ELSE (goto NoMatchesFound).

for %%A in ("1" "2" "3" "4" "5" "6" "7" "8" "9" "A" "B" "C" "D" "E" "F") do (if "%input%"==%%A (goto Text))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...