Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 批量扫描单词短语(用户输入)_Batch File - Fatal编程技术网

Batch file 批量扫描单词短语(用户输入)

Batch file 批量扫描单词短语(用户输入),batch-file,Batch File,我试图创建一个批处理文件,可以响应命令等(很像和AI),但我有一个零件的问题 以下是我所拥有的: @echo off set /p Quest="How are you today? " echo %Quest% > Results.txt for /f "tokens=1,2,3,4,5 delims= " %%a in (Results.txt) do ( if %%(something)==good do "My day is doing good as well." ) pause

我试图创建一个批处理文件,可以响应命令等(很像和AI),但我有一个零件的问题

以下是我所拥有的:

@echo off
set /p Quest="How are you today? "
echo %Quest% > Results.txt
for /f "tokens=1,2,3,4,5 delims= " %%a in (Results.txt) do (
if %%(something)==good do "My day is doing good as well."
)
pause
如何扫描
Results.txt
的内容


例如:如果用户说:“我今天很好”或简单地说“很好”。既然他们的回答会被打印到
Results.txt
中,我怎么能只扫描“好”(或任何其他描述性形容词)一词,然后根据这一词(或任何其他描述性形容词)对用户做出回应呢?

就像Rojo建议的那样,不需要使用文件和命令,这是您正在寻找的,也是您尝试执行的。但为了避免奇怪的结果,比如“不是很好”被解释为“很好”,并让您更好地控制提供的答案,我建议使用正则表达式(parameter
/r
)。大概是这样的:

@echo off
set /p Quest="How are you today? "
echo %Quest% | findstr /r /i "not.*good not.*well" >nul && echo Sorry && goto:pause
echo %Quest% | findstr /i "good well" >nul && echo My day is doing good as well
:pause
pause
如果您确实想使用文件,请尝试以下方法:

@echo off
set /p Quest="How are you today? "
echo %Quest% > Results.txt
findstr /r /i "not.*good not.*well" Results.txt >nul && echo Sorry && goto:pause
findstr /i "good well" Results.txt >nul && echo My day is doing good as well
:pause
pause

你可能会发现。基本上,不用回显Results.txt,而是使用
findstr
或子字符串替换来测试
%Quest%
是否存在好的、好的、优秀的、好的、不坏的等等。在这种情况下,
findstr
可能更可取,因为您可以在一个命令中组合多个同义词<代码>echo(%Quest%| findstr/i“good-great-fine-excellel”>NUL&&(echo我的日子也过得很好。)| |(echo啊,听到这个消息我很难过。)很抱歉打扰您,字符串工作得很好,但我不明白
不好的地方是什么。*好的
不好的地方是什么。*好的
你能帮我解释一下它们做什么或执行什么吗。谢谢
不好。*好的
意味着回答像
不太好
我感觉不好
排序。
是任何字符的通配符,
*
用于重复前面的字符或类的零次或多次出现…请参见
使用正则表达式和findstr