Ctrl K

Скрыть контактные данные

Средняя
Перед публикацией отзыва нужно скрыть контакт автора. Строка contact — это либо адрес электронной почты, либо номер телефона. Верните его замаскированную версию. **E-mail** имеет вид имя@домен: имя состоит из латинских букв и может содержать внутри символы ., - и _ (первый и последний символ имени — буквы), домен — из латинских букв и точек (точка не стоит в начале или конце домена и не идёт две подряд). Чтобы скрыть адрес: - все буквы переводятся в нижний регистр; - от имени остаются только первая и последняя буквы, а всё между ними заменяется ровно на пять звёздочек *****, какой бы длины ни было имя. Если имя из одной буквы, она считается и первой, и последней: [email protected] превращается в a*****[email protected]. **Телефон** содержит от 10 до 13 цифр, между которыми могут стоять разделители +, -, (, ) и пробел. Последние 10 цифр — местный номер, цифры перед ними (от 0 до 3) — код страны. Чтобы скрыть номер, разделители выбрасываются, и результат записывается так: - ***-***-XXXX, если кода страны нет; - +*-***-***-XXXX, +**-***-***-XXXX или +***-***-***-XXXX, если в коде страны 1, 2 или 3 цифры соответственно. Здесь XXXX — последние четыре цифры номера.
Пример 1
contact="[email protected]" → 'm*****[email protected]'

Это e-mail. Всё приводится к нижнему регистру, от имени masha.petrova остаются первая и последняя буквы, а между ними ровно пять звёздочек.

Пример 2
contact="+44 (20) 7946-0018" → '+**-***-***-0018'

Это телефон: цифр 12, значит код страны состоит из 2 цифр. Видны только последние четыре цифры 0018.

Пример 3
contact="(495) 123-45-67" → '***-***-4567'

Ровно 10 цифр — кода страны нет, и плюс в начале не ставится.

Ограничения
  • contact — корректный e-mail или телефон по правилам выше
  • e-mail: 5 ≤ len(contact) ≤ 40
  • телефон: 10 ≤ len(contact) ≤ 20, только цифры и разделители
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамый длинный фрагмент без повторов СредняяСамый длинный зеркальный кусок СредняяЗмейка по строкам СредняяСнисходительное чтение числа СредняяЧисло римскими цифрами Средняя
загружаем Python…
Вход
contact="[email protected]"
Ожидается
'm*****[email protected]'

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 151 тест на сервере, включая скрытые.