Я пытаюсь обработать различные тексты с помощью регулярных выражений и NLTK python, который находится на http://www.nltk.org/book-. Я пытаюсь создать генератор случайных текстов, и у меня возникают трудности с проблемой. Во-первых, вот мой алгоритм:
Введите предложение как ввод - это называется триггерной строкой -
Получить самое длинное слово в строке триггера
Поиск во всей базе данных Project Gutenberg предложений, содержащих это слово - независимо от прописных букв -
Верните самое длинное предложение со словом, о котором я говорил на шаге 3
Добавить предложение в Шаг 1 и Шаг 4 вместе
Повторите процесс. Обратите внимание, что я должен получить самое длинное слово во втором предложении и продолжать в том же духе и так далее -
До сих пор мне удавалось сделать это для первых двух предложений, но я не могу выполнить поиск без учета регистра. Вся база данных предложений Project Gutenberg доступна через функцию gutenberg.sents()
, но регулярное выражение - поиск без учета регистра практически невозможен, поскольку gutenberg.sents()
выводит предложения в книгах следующим образом - в списке формата списка -:
ПРИМЕР: все предложения макбета Шекспира вызываются набрав
import nltk
from nltk.corpus import gutenberg
gutenberg.sents('shakespeare-macbeth.txt')
в командной строке оболочки Python и вывод:
[['[', 'The', 'Tragedie', 'of', 'Macbeth', 'by', 'William', 'Shakespeare', '1603', ']'],
['Actus', 'Primus', '.'], .......]
с [Трагедия Макбета Уильяма Шекспара, 1603] и Actus Primus. будучи первыми двумя предложениями.
Как мне найти слово, которое я ищу, независимо от того, является ли оно прописными / строчными? Я отчаянно нуждаюсь в помощи, так как я возился с этим в течение последних двух дней, и это начинает нервировать. Большое спасибо.