![]() |
酷酷的小蝌蚪 · 融创中国:融创华北拟以14.86亿元收购天津 ...· 1 年前 · |
![]() |
憨厚的烈马 · 黄海客车报价和图片_丹东黄海汽车有限责任公司· 1 年前 · |
![]() |
失落的鸡蛋面 · GitHub - ...· 1 年前 · |
![]() |
有腹肌的草稿本 · DP恶魔手机人物,漫画作者,漫画人物 - 快看漫画· 1 年前 · |
在批处理文件中,我有一个字符串
abcdefg
。我想检查
bcd
是否在字符串中。
不幸的是,似乎我找到的所有解决方案都是在文件中搜索子字符串,而不是在字符串中搜索子字符串。
有没有一个简单的解决方案?
发布于 2011-08-28 09:25:45
您可以通过管道将源字符串传递给
findstr
,并检查
ERRORLEVEL
的值,以查看是否找到了模式字符串。零值表示成功,并且找到了该模式。下面是一个示例:
::
: Y.CMD - Test if pattern in string
: P1 - the pattern
: P2 - the string to check
@echo off
echo.%2 | findstr /C:"%1" 1>nul
if errorlevel 1 (
echo. got one - pattern not found
) ELSE (
echo. got zero - found pattern
)
当它在CMD.EXE中运行时,我们得到:
C:\DemoDev>y pqrs "abc def pqr 123"
got one - pattern not found
C:\DemoDev>y pqr "abc def pqr 123"
got zero - found pattern
发布于 2014-01-12 16:12:34
我通常这样做:
Echo.%1 | findstr /C:"%2">nul && (
REM TRUE
) || (
REM FALSE
)
示例:
Echo.Hello world | findstr /C:"world">nul && (
Echo.TRUE
) || (
Echo.FALSE
Echo.Hello world | findstr /C:"World">nul && (Echo.TRUE) || (Echo.FALSE)
输出:
TRUE
FALSE
我不知道这是不是最好的方法。
发布于 2014-08-28 09:59:41
为了兼容性和易用性,通常最好使用FIND来实现这一点。
您还必须考虑是区分大小写还是不区分大小写。
有78分的方法(我相信我指的是paxdiablo的帖子)只会对大小写敏感地进行匹配,所以你必须对你想要匹配的每个可能的迭代的每个大小写变化分别进行检查。
)太痛苦了!只有3个字母,这意味着为了完成检查需要进行9个不同的测试!)
此外,在很多情况下,最好是匹配命令输出、循环中的变量或批处理/CMD中指针变量的值,而这不是直接的。
由于这些原因,这是一种更可取的替代方法:
用法: Find /I "Characters to Match“
作为单行:
ECHO.%Variable% | FIND /I "ABC">Nul && ( Echo.Found "ABC" ) || ( Echo.Did not find "ABC" )
多行:
ECHO.%Variable%| FIND /I "ABC">Nul && (
Echo.Found "ABC"
) || (
Echo.Did not find "ABC"
)
如前所述,这对于不在允许字符串替换的变量中的东西是很好的:
FOR %A IN (
"Some long string with Spaces does not contain the expected string"
oihu AljB
lojkAbCk
Something_Else
"Going to evaluate this entire string for ABC as well!"
) DO (
ECHO.%~A| FIND /I "ABC">Nul && (
Echo.Found "ABC" in "%A"
) || ( Echo.Did not find "ABC" )
![]() |
憨厚的烈马 · 黄海客车报价和图片_丹东黄海汽车有限责任公司 1 年前 |
![]() |
失落的鸡蛋面 · GitHub - raoyongming/HorNet: [NeurIPS 2022] HorNet: Efficient High-Order Spatial Interactions with Recursive Gated Convolutions 1 年前 |
![]() |
有腹肌的草稿本 · DP恶魔手机人物,漫画作者,漫画人物 - 快看漫画 1 年前 |