在 Windows 批处理文件中,我有一个字符串“abcdefg”。我想检查'bcd'是否在字符串中,但我也希望每个都在变量中,或者传入字符串的参数。
这个解决方案很接近,但使用常量而不是变量。 批处理文件:查找子字符串是否在字符串中(不在文件中)
在 Windows 批处理文件中,我有一个字符串“abcdefg”。我想检查'bcd'是否在字符串中,但我也希望每个都在变量中,或者传入字符串的参数。
这个解决方案很接近,但使用常量而不是变量。 批处理文件:查找子字符串是否在字符串中(不在文件中)
尝试一个:
set "var=abcdefg"
set "search=bcd"
CALL set "test=%%var:%search%=%%"
if "%test%"=="%var%" (echo %search% is not in %var%) else echo %search% in %var% found
set "var=abcdefg"
set "search=bcd"
echo %var%|findstr /lic:"%search%" >nul && echo %search% found || echo %search% not found
解决方案是使用FindStr
NULL 重定向,>nul
.
SET var=%1
SET searchVal=Tomcat
SET var|FINDSTR /b "var="|FINDSTR /i %searchVal% >nul
IF ERRORLEVEL 1 (echo It does't contain Tomcat) ELSE (echo It contains Tomcat)
另存为test.bat
并与要搜索的参数一起执行,如下: test Tomcat7
C:\>test Tomcat9
It contains Tomcat