JustCaptain kod-buduschego
bd4b9bff90d440798790be6f4a2d484bc7890ce9
Перейти к файлу
Код
task_1.py
"""
TASK-J1 — Валидация корпоративной почты
Контекст
При регистрации сотрудников HR-система должна принимать только корпоративные email.
Разрешены адреса только в домене company.com.

Требования: С помощью регулярного выражения оставить только корпоративные адреса.
Ожидаемый результат:
[
"alex@company.com",
"john@company.com",
"test@company.com"
]

Что проверяется:
- re.findall() или re.match()
- Символы ^ и $
- Экранирование точки (\.)

"""

import re

emails: list[str] = [
    "alex@company.com",
    "kate@gmail.com",
    "john@company.com",
    "admin@yahoo.com",
    "test@company.com",
]


def filter_domain_emails(emails: list[str], domain: str) -> list[str]:
    pattern = r"\w+@" + domain + r"|\d+@" + domain
    result: list[str] = []
    for email in emails:
        if re.search(pattern=pattern, string=email):
            result.append(email)
    return result


print(filter_domain_emails(emails=emails, domain="company.com"))