Задание №10 — Поиск слова в тексте
#69372Задание №10ФИПИ
Текстовый процессор
Определите, сколько раз в тексте VI главы романа М. А. Булгакова «Собачье сердце» встречается отдельное слово «Фёдор» с прописной буквы. В ответе укажите только число.
Правильный ответ
11
Пояснение
Решение:
Считаем только по главе VI, поэтому сначала выделим её текст: от заголовка «VI» до заголовка «VII».
Затем Ctrl+F, вводим Фёдор — именно через букву «ё», как в тексте романа. Включаем «Только слово целиком» (иначе будут посчитаны «Фёдора», «Фёдору», «Фёдорович») и «Учитывать регистр», поскольку нужно слово с прописной буквы. Поиск ведём по выделенному фрагменту.
В главе VI слово «Фёдор» встречается 11 раз.
Проверка программой:
import re
text = open('text.txt', encoding='utf-8').read()
start = text.index('\nVI\n')
end = text.index('\nVII\n')
chapter = text[start:end]
matches = re.findall(r'(?<![А-Яа-яЁё])Фёдор(?![А-Яа-яЁё])', chapter)
print(len(matches)) # 11
Ответ: 11