Регулярные выражения · 13 из 14
Телефоны во всём номере
Перед сдачей номера телефоны сверяют с картотекой: не съехала ли цифра при наборе. Записаны они кто во что горазд — «8-900-111-22-33», «+7 (900) 111 22 33», «89001112233», — а сверять надо в одном виде и знать, в какой строке каждый найден.
Что сделать
Найдите во всём номере телефоны и запишите их в одном виде — для сверки с картотекой.
Что приходит
stroki— строки номера
Что вернуть
Список пар (номер строки с единицы, телефон): телефон — 11 цифр, всегда с «8» в начале, без разделителей: (1, "89001112233").
Допишите функцию nayti_telefony в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
Телефон — одиннадцать цифр, начинающихся с «8» или «+7»; между цифрами бывают пробелы, дефисы и скобки. «8-900-111-22-33» и «+7 (900) 111 22 33» — один и тот же номер "89001112233".
stroki = ["Диван, тел. 8-900-111-22-33", "без телефона"]
nayti_telefony(stroki)
[(1, '89001112233')]
Функция принимает список строк номера.
Возвращает список пар «номер строки и телефон», по паре на каждый найденный телефон, в порядке появления. Строки считаются с единицы. Телефон — одиннадцать цифр, начинающихся с «8» или с «+7»; между цифрами могут стоять пробелы, дефисы и скобки. В ответе телефон записывается только цифрами и всегда начинается с «8». В одной строке телефонов может быть несколько.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.