только не надо всё усложнять

для начала надо определиться, откуда берутся данные (предложения). затем имеет смысл продумать формат этих данных. я бы сделал примерно такой:
Оператор delete уничожает трам-пам-пам|1
Модератор testin' пиво и возвращает true на запрос пользователя|2
Т.е. сначала предложение, а затем номер слова, которое должны пропускать. Загрузил бы этот txt и воспользовался String.split сначала по "/r/n" (чтобы разбить на отдельные вопросы), затем по "|", ну а предложение естественно по " ". Ну и показывал бы вопросы, состоящие из динамических текстовых полей, одно из которых есть input. При нажатии на кнопочку "проверка" сверял бы с "эталоном" (все слова-то в массиве, номер "неизвестного" известен

).