0
0 комментариев

написать 10 функций, использующих регулярные выражения. Решение не должно содержать в себе ничего, кроме функций. Для того, чтобы удалять из текста подстроки, соответствующие определённому паттерну, воспользуйтесь функцией re.sub.
Скелет программы для работы вот такой:
def phone_num_validation(string):
pass

def date_validation(string):
pass

def roman_num_validation(string):
pass

def ipv4_validation(string):
pass

def whitespace_cleaning(filename):
pass

def named_entitites_counter(filename):
pass

def numbering_cleaning(filename):
pass

def loanwords_extraction(filename):
pass

def html_tag_extraction(filename):
pass

def html_tag_cleaning(filename):
pass
Первые 4 функции принимают на вход строку и возвращают True или False в зависимости от того, является ли строка:
номером мобильного телефона формата +7 (9ХХ) ХХХ-ХХ-ХХ
датой формата DD.MM.YYYY в диапазоне от 1000 до 1999 года включительно
числом в римской системе счисления
валидным IPv4 адресом в десятичной с точками форме записи (например, 127.0.0.1)
Следующие 4 функции принимают на вход название текстового файла с русским текстом в кодировке UTF-8 и:
удаляет из текста все лишние пробелы и переносы строк – заменяет все последовательности из двух и более пробелов или переносов строк на один пробел или перенос строки соотвественно, и возвращает очищенный текст.
возвращает частотный словарь (воспользуйтесь классом collections.Counter) всех словоформ имён собственных, кроме тех, которые стоят в начале предложения
удаляет из текста нумерацию глав и возвращает очищенный текст. Нумерацией глав считать любые арабские или римские числа, находящиеся на отдельной строке (после числа может стоять одна точка).
возвращает список заимствований в тексте. Заимствованиями считать любые последовательности букв латинского алфавита (кроме римских цифр), разделённых пробелами и переносами строк (примеры из тестового текста: ‘Hollywood Canteen’, ‘Black and Tan Fantasy’)

Asked question
Добавить комментарий