Utiliser findstr dans input, comment faire ?
Bonjour, je bricole un petit chatbot en fichier Batch, je suis sur la bonne piste mais je n'arrive pas à intérger "findstr" pour trouver le mot clef dans l'entrée de l'utilisateur...
Pour l'instant j'ai mis ça :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| @echo off
title Test Bot
COLOR 1a
cls
:debut
echo ze test
Pause >nul
goto suite
:ionose
setlocal enabledelayedexpansion
set string[0]=Pardon?
set string[1]=Excusez-moi?
set /a idx=%random% %%2
echo !string[%idx%]!
:suite
SET /P Humain=
set Humain=%Humain:?=%
call :%Humain: =% 2>NUL
rem echo %Humain%|findstr /i "coucou" > nul & goto coucou
rem echo %Humain%|findstr /i "voitur" > nul & goto voiture
if %errorlevel% equ 0 goto ionose
:coucou
setlocal enabledelayedexpansion
set string[0]=coucou 0.
set string[1]=coucou 1.
set /a idx=%random% %%2
echo !string[%idx%]!
goto suite
:voiture
setlocal enabledelayedexpansion
set string[0]=test voiture 0.
set string[1]=test voiture 1.
set /a idx=%random% %%2
echo !string[%idx%]!
goto suite |
j'ai mis en commentaire les 2 lignes test consacrées à "findstr" car ça ne marche pas trop. Le but est le trouver le mot "coucou" par exemple en pleine chaine de caractères.
Si l'utilisateur tape "hey man, coucou ! ça roule aujourd'hui?", le mot coucou est trouvé et hop, on est renvoyé vers une instruction plus bas.
Une idée de comment faire ça?
Merci de vos conseils, je coince un peu là mdr
Bon weekend.
Alain