所以基本上,是否有任何方法可以使批处理文件不需要确切的答案来执行操作。例如:
if %c%=images goto :images
上述意味着我必须输入确切的字词images
,如果我添加更多字词,则不会转到:images
标签。如何使用您输入的句子中的单词来转到标签
例如,如果它问我:
Where would you like to go?
我说:
The image section please.
然后它将我带到图像部分,而不需要只说image
。
这可能吗?
答案 0 :(得分:2)
您可以使用find
。
echo %c% | find /i "image" >NUL && goto images
这也将提供不区分大小写的匹配。此外,如果您需要更精细地调整匹配,也可以使用findstr
基于正则表达式进行匹配。
如果您对上面的|
和&&
如何发挥作用感到好奇,请参阅command redirection以获取更多信息。
答案 1 :(得分:2)
这里有一个类似的问题:Batch file: Find if substring is in string (not in a file)
接受的答案可以适用于您的情况:
if /i "%c:image=%" neq "%c%" goto images
这种技术使用字符串替换来替换单词image
什么都没有(从你正在搜索的字符串中删除单词),然后将它与原始字符串进行比较。如果它们不同,则找到子串。