如何在批处理文件中检查某些文本输入?

时间:2016-07-11 18:30:09

标签: batch-file

我有一个批处理文件,允许用户输入内容,然后输入他们输入的内容并将其作为值,假设该值称为 %input%

我希望批处理文件检查 %input% 值中的某些字词,然后使用 goto 命令。

有人有任何解决方案吗?

感谢。

修改

以下是我正在使用的一些代码:

@echo off
title Test
:Loop
Set /p Input=""
if "%input%"=="word *" goto function

我只需要帮助确定如何在 "word" 值中检查 %input%

希望这能解决一些问题。

1 个答案:

答案 0 :(得分:1)

Give a try for this code :

@echo off
:MainLoop
Color 0B
Cls
set /p "Input=Type something here "
echo %Input%|findstr /i "\<hello\>">nul && goto HelloFunction || goto NoHelloFunction

:HelloFunction
cls
Color 0A
echo I am into The Hello Function
pause
Goto MainLoop

:NoHelloFunction
cls
Color 0C
echo I am not into the Hello Function
pause
Goto MainLoop

Explanation

\< and \> means "Word boundaries", this avoids false positives (Helloo, Chello,...)

>nul redirects the found string to nul to keep the screen clear.

&& executes the set command only, if previous command (findstr) was successful.

|| means else and goto to another function