0 / 0 / 0
Регистрация: 05.11.2019
Сообщений: 48

Вывести телефонный номер с необходимыми разделителями

21.02.2020, 16:15. Показов 2930. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста с задачей:
С помощью re.sub написать код, который на вход получает номер телефона, а на выход расписывает этот номер с необходимыми разделителями ("()", "-")

Ввод:
88005553535
+78005553535

Вывод:
8 (800) 555-35-35
+7 (800) 555-35-35
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.02.2020, 16:15
Ответы с готовыми решениями:

Телефонный справочник: Вывести на экран номер АТС и число обслуживаемых ею абонентов
создать "Телефонный справочник" следующей структуры : *ФИО #Фамилия(15 знаков) #Имя(12 знаков) #Отчество(12 знаков) ...

Сформировать текст из строки с разделителями и отсортировать его по количеству символов меж разделителями
Ввести массив символов разделителей с заданным количеством символов и массив строк текста, содержащий неизвестное заранее количество строк....

Телефонный номер.
Математик решил позвонить своему другу в Москву (все телефонные номера в Москве семизначные), но номер телефона забыл. Зато он хорошо...

4
 Аватар для Wolflind
127 / 107 / 31
Регистрация: 17.03.2016
Сообщений: 445
Записей в блоге: 1
21.02.2020, 17:06
Регулярные выражения используйте
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.02.2020, 17:48
Wolflind,
Цитата Сообщение от k__i__a Посмотреть сообщение
С помощью re.sub
Логично, ага
0
 Аватар для Wolflind
127 / 107 / 31
Регистрация: 17.03.2016
Сообщений: 445
Записей в блоге: 1
21.02.2020, 21:26
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Логично, ага
это упустил))

Добавлено через 9 минут
примерно так
([8]|[+][7]){1}([\d]{3})([\d]{3})([\d]{2})([\d]{2})
и
\1\(\2\) \3-\4-\5
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
21.02.2020, 21:36
Лучший ответ Сообщение было отмечено iSmokeJC как решение

Решение

ТС хочет что-то типа такого.
Python
1
2
3
4
5
>>> >>> re.sub(r"(\+*[7-8])(\d{3})(\d{3})(\d{2})(\d{2})", r"\1 (\2) \3-\4-\5",'88005553535')
'8 (800) 555-35-35'
>>> re.sub(r"(\+*[7-8])(\d{3})(\d{3})(\d{2})(\d{2})", r"\1 (\2) \3-\4-\5",'+78005553535')
'+7 (800) 555-35-35'
>>>
Правильность регулярки можно еще очень долго уточнять.

Добавлено через 5 минут
Слегка уточненный вариант:
Python
1
2
3
4
5
6
>>> phone = re.compile(r"(\+7|8)(\d{3})(\d{3})(\d{2})(\d{2})")
>>> phone.sub(r"\1 (\2) \3-\4-\5",'+78005553535')
'+7 (800) 555-35-35'
>>> phone.sub(r"\1 (\2) \3-\4-\5",'88005553535')
'8 (800) 555-35-35'
>>>
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.02.2020, 21:36
Помогаю со студенческими работами здесь

Телефонный номер
На различных сайтах часто требуется ввести номер телефона в определённом формате. Напиши программу, которая будет преобразовывать...

Телефонный номер
Здравствуйте, помогите пожалуйста с задачей, не могу понять как решается, спасибо! Дан телефонный номер. Напишите программу которая...

Телефонный номер на странице
Здравствуйте. Подскажите, есть страница на которой указан телефонный номер формируется VCARD'ом яндекса. В опере телефон показывается...

Программа телефонный номер
Тут столкнулся с проблемой. Программа не выводит телефонный номер, при вводе русских символов, реагирует только на английский ввод. Не...

СтрЗаменить телефонный номер
У меня есть телефонный номер (012) 34-56-78. Чтобы остались одни цифры.Как удалить все лишние знаки. Например знаки ":) (* -!...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru