Алгоритм решения задания 15. Часть 2
Учимся решать 15 задания второго типа
Читать
Текстовый файл состоит из букв латинского алфавита, символов точки «.» и символов пробела. Определите максимальное количество символов в непрерывной последовательности, которая является корректно записанным предложением.
В корректно записанном предложении выполняются все условия:
— предложение должно начинаться с заглавной буквы;
— предложение должно оканчиваться точкой, которая в предложении единственная и перед которой нет пробела;
— слова в предложении должны состоять из произвольных комбинаций букв, но при этом только первая буква каждого слова может быть заглавной;
— слова в предложении должны разделяться символом пробела, два пробела стоять рядом в предложении не могут;
— предложения должны разделяться символом пробела.
Например, этим условиям удовлетворяет такое предложение: «Lorem Ipsum dolores.»
В ответе укажите количество символов в предложении, не учитывая символ точки.
import re
with open('2420.txt', 'r') as file:
data = file.readline()
f_word = r'[A-Z][a-z]*'
word = r'[A-Za-z][a-z]*'
sentence = rf'({f_word}(s{word})*).'
matches = re.finditer(sentence, data)
answer = max([match.group(1) for match in matches], key=len)
print(f'{len(answer)}: {answer}')
