0

Regular Expressions Не проходит внутренний Test Case 3

В разделе регулярные выражения Проект по кдингу – Проверка регулярных вырадений не могу пройти Test Case 3 (внутренний тест), подскажите в чем ошибка? Задание: В качестве вводных данных вам даны числа. Вы должны проверить, являются ли эти числа действующим номером телефона. Действующий номер телефона состоит ровно из 8 чисел и начинается с 1, 8 и 9. Выведите результат "Valid", если номер работает, в противном случае – "Invalid". Решение: import re #введите код сюда tel_number = input() pattern = r"[189]\d{7}" if re.match(pattern, tel_number): print('Valid') else: print('Invalid')

26th Dec 2021, 11:49 AM
Lyapunov Alexander
Lyapunov Alexander - avatar
4 Answers
+ 1
Так он отловит только 8 цифр в потоке текста с началом 189 есть ещё флаги начала ^ и конца $
26th Dec 2021, 3:06 PM
Alexey Kopyshev
Alexey Kopyshev - avatar
+ 1
А где ограничение на 8 цифр? Такой номер тоже пройдёт: Номер14574896
26th Dec 2021, 2:52 PM
Alexey Kopyshev
Alexey Kopyshev - avatar
0
Ограничение установил так-...\d{7}
26th Dec 2021, 3:00 PM
Lyapunov Alexander
Lyapunov Alexander - avatar
0
Спасибо, выражение r'^[189]\d7' работает корректно
26th Dec 2021, 4:19 PM
Lyapunov Alexander
Lyapunov Alexander - avatar