So, I am programming in the batch script and I came across this issue. The following code will take yourwords.txt file and parse it. The
existedWord variable will have the last word of the text file. So, everytime when I run this program it will only compare the user's input with the last word on the text file, but I want it to compare from the beginning and if that word exist in the text file then just display message as "Repeated word". If that word is not in the text file then add it to the .txt file and display message as "That is a new word."
The .txt file contain words per line. For example,
apple banana cat dog elephant fish gone home ignorant
NOTE: the number of words in this text file could be hundreds.
My goal is to compare the every word in this text file and see if the user input match with the words existed in .txt file.
@echo off :START cls echo. echo Enter a word: set /p "cho=->" for /F "tokens=*" %%A in (yourwords.txt) do (set existedWord=%%A) if /I %cho%==%existedWord% (goto REPEATEDWORD) echo %cho% >> yourwords.txt ) :SUCCESSFUL echo. echo That is a new word. Ping -n 5 Localhost >nul goto START :REPEATEDWORD echo. echo Sorry! that word is repeated word. echo. pause goto START