Пошук коду експрес-накладної Нової Пошти
Інтернет-магазини надсилають покупцеві текстові повідомлення, які можуть складатися з номера замовлення, дати відвантаження, номера телефону підтримки, та номер експрес-накладної Нової Пошти.
Вам потрібно написати функцію def find_en(text: str) -> str | None,
яка шукає у тексті код експрес-накладної (ЕН)
Нової Пошти. Експрес-накладна (ЕН) — це унікальний 14-значний числовий код, що присвоюється кожному відправленню.
Функція повинна
- Приймати на вхід текст, який може містити ЕН разом із іншою інформацією (наприклад, номером замовлення, датою тощо).
- Повернути знайдений код ЕН як рядок, якщо він є у тексті.
- Повернути
None
, якщо ЕН у тексті немає.
Вимоги до реалізації
- Код ЕН завжди складається лише з 14 цифр (наприклад,
12345678901234
). - У тексті може бути лише один або кілька кодів ЕН, але функція має повертати перший знайдений.
- Якщо код ЕН відсутній, функція повинна повернути
None
. - Ігнорувати іншу інформацію в тексті (наприклад, дати, номери телефонів, інші числа, які не є ЕН).
- Використання модуля
re
заборонено.
Приклад роботи
>>> print(find_en("Ваш номер замовлення 123456, дата відправки 01.11.2024, код ЕН 12345678901234."))
12345678901234
>>> print(find_en("Замовлення відправлено! Код експрес-накладної: 98765432109876. Дякуємо за покупку!"))
98765432109876
>>> print(find_en("Текст без коду ЕН."))
None
>>> print(find_en("ЕН: 12345678901234, додатково: 09876543210987."))
12345678901234
Підказки
- Розбийте текст на окремі слова за допомогою
split()
. - Перевірте кожне слово: чи є воно числом (
isdigit()
) і чи його довжина дорівнює 14 (len()
). - Якщо знайдено перше число довжиною 14 символів, поверніть його. Якщо ні — поверніть
None
.