Регистрация номера телефона в Python (aiogram 3.x)
каким образом сделать механизм регистрация номера телефона по формату, т.е человек водит номер телефона и он обязательно должен быть такого формата (+7xxxxxxxxx) - иначе бот выдаст пользователю ошибку о том, что номер телефона был веден неверно
@router.message(F.text.lower() == "пройти регистрацию")
async def reg_user(message: Message, state: FSMContext):
await state.set_state(Register.RegName)
await message.answer("Введите Ваше имя")
@router.message(Register.RegName)
async def reg_user_2(message: Message, state: FSMContext):
await state.update_data(RegName=message.text)
await state.set_state(Register.RegPhone)
await message.answer("Введите номер телефона\n"
"Формат телефона: +7xxxxxxxxx")
@router.message(Register.RegPhone)
async def reg_user_phone(message: Message, state: FSMContext):
await state.update_data(RegPhone=message.text)
data = await state.get_data()
await message.answer(f"Спасибо, регистрация завершена\nВаше имя: {data['RegName']}\nВаш номер: {data['RegPhone']}")
await state.clear()
Ответы (1 шт):
Автор решения: Oopss
→ Ссылка
import re
tel=input("Введити номер телефона в формате +7XXXXXXXXXX ")
if re.match('\+7\d\d\d\d\d\d\d\d\d\d',tel):
print("Правильный телефон ",tel)
else:
print("Неправильный телефон", tel)
Введите номер телефона в формате +7XXXXXXXXXX +71234567788
Правильный телефон +71234567788
Введите номер телефона в формате +7XXXXXXXXXX 8 132 456 78 88
Неправильный телефон 8 132 456 78 88