Задание №10 — Поиск слова в тексте
#69367Задание №10ФИПИ
Текстовый процессор
Определите, сколько раз в тексте V главы романа М. А. Булгакова «Собачье сердце» встречается сочетание букв «филиппович» или «Филиппович» только в составе других слов, но не как отдельное слово. В ответе укажите только число.
Правильный ответ
5
Пояснение
Решение:
Открываем файл и выделяем текст V главы — фрагмент от заголовка «V» до заголовка «VI» (проще скопировать главу в отдельный документ).
Здесь нужно сочетание букв не как отдельное слово, поэтому считаем в два приёма.
- Ищем «филиппович» с выключенным «Учитывать регистр» и выключенным «Только слово целиком» — это все вхождения сочетания букв: 8.
- Тот же поиск с включённым «Только слово целиком» — это вхождения в виде отдельного слова: 3.
Вхождения внутри других слов: . Это словоформы «Филипповича» (3 раза) и «Филипповичем» (2 раза).
Проверка программой (глава сохранена в текстовый файл):
import re
text = open('glava5.txt', encoding='utf-8').read()
vsego = len(re.findall('филиппович', text)) + len(re.findall('Филиппович', text))
otdelno = len(re.findall(r'\bфилиппович\b', text)) + len(re.findall(r'\bФилиппович\b', text))
print(vsego - otdelno)Программа печатает 5.Ответ: 5