powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите написать регексп
25 сообщений из 30, страница 1 из 2
Помогите написать регексп
    #34145301
Usual Suspect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
который из номеров телефонов удаляет дефисы. Например 943-482, 91-46-71, 8-723-290-10-06

Знаний хватает только на что-то вроде \b(\d*)((\d*)-)(\d*)\b -> $1$2$3.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34145305
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"992-32-85".replaceAll("-", "");
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34145339
Usual Suspect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mysterio"992-32-85".replaceAll("-", "");Можно было не утруждать пальчики. 2 балла. Давайте зачетку.

Ваш регексп заменит дефисы и в словах типа Бонч-Бруевич, Ульянов-Ленин, следовательно он не подходит в качестве решения.

Эх. Упал уровень форумов за последние 7 лет, упал. 7 лет назад дураков в интернете было меньше, они занимались строевой и политподготовкой.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34145347
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Э.. как задали вопрос, так и получили ответ.
Например 943-482, 91-46-71, 8-723-290-10-06
Я считал, что на вход подается именно номер телефона. И тогда он подходит в качестве решения.
Эх. Упал уровень форумов за последние 7 лет, упал. 7 лет назад дураков в интернете было меньше, они занимались строевой и политподготовкой.
Может быть такого умнику, как Вы, кто-нибудь да поможет. Я точно нет.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34145728
АСУ ТПшник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еп... дык вы профинансируйте и организуйте поднятие уровней в форумах. Начните с себя кстати.
развелось анонимов, пытающихся работать на чужих знаниях, и гордо называющих себя программистами.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34145779
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на самом деле задача весьма примитивная, и то что вы обращаетесь с таким простым вопросом на форум (не лень же было печатать) и одновременно выставляете себя умником выглядит выдает вашу некомпитентность как в программировании так и просто в ощении
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34146204
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fjordна самом деле задача весьма примитивная, и то что вы обращаетесь с таким простым вопросом на форум (не лень же было печатать) и одновременно выставляете себя умником выглядит выдает вашу некомпитентность как в программировании так и просто в ощении
+1
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34148181
DIMA11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton fjordна самом деле задача весьма примитивная, и то что вы обращаетесь с таким простым вопросом на форум (не лень же было печатать) и одновременно выставляете себя умником выглядит выдает вашу некомпитентность как в программировании так и просто в ощении
+1

100%
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34155828
Usual Suspect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
(\d+)-(\d) -> $1$2 такой вот регексп в принципе работает, но выдает неправильные резалты в таких случаях как "25-35 лет" (тут ничего не поделать) или "3-4-комн квартира" (а вот такой случай как раз хотелось бы пропустить, т.е. если в слове есть буквы - пропустить слово
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34155955
_олончанин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usual Suspect(\d+)-(\d) -> $1$2 такой вот регексп в принципе работает, но выдает неправильные резалты в таких случаях как "25-35 лет" (тут ничего не поделать) или "3-4-комн квартира" (а вот такой случай как раз хотелось бы пропустить, т.е. если в слове есть буквы - пропустить слово

никуда негодный твой регексп! тысячу чертей!
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34155989
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже у афтора - свой Гондурас.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34155991
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня заняло 30 минут.
Скажите свое мнение - это я очень умный, а автор тупой или наоборот?

Код: plaintext
1.
2.
3.
String s = "Чмоге-чмоге 943-482 х, 54-55-65, 8-723-290-10-06, 8723-290-10-06, 25-45, 3-4-комн. квартира, АКУЗ карапуз";

System.out.println(s.replaceAll("(\\d+)-*(\\d+)-(\\d*)(-(\\d*)|(\\d{3}))-*(\\d*)","$1$2$3$5$6"));
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34155994
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только здесь допущена ошибка. Найдет её автор или нет? :)
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156002
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А, забыл.
Я ж обещал никому ничего не пытаться объяснять.

Код: plaintext
1.
System.out.println(s.replaceAll("(\\d+)-*(\\d+)-(?:(\\d*)-|(\\d{3})(\\d*))-*(\\d*)-*(\\d*)","$1$2$3$4$5$6$7"));
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156051
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s.replaceAll("(?<=\\d)-(?=\\d)", "") - немножко короче :) убирает все дефисы между цифрами.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156075
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysterios.replaceAll("(?<=\\d)-(?=\\d)", "") - немножко короче :) убирает все дефисы между цифрами.
Немножно короче, но неправильно.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156081
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поясните
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156100
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysterioпоясните

Usual Suspectкоторый из номеров телефонов удаляет дефисы. Например 943-482, 91-46-71, 8-723-290-10-06

Usual Suspectв таких случаях как "25-35 лет" (тут ничего не поделать) или "3-4-комн квартира"

Понятно, что хотел автор? Нужно разбирать все возможные форматы записей телефонных номеров , на просто чисел разделенных дефисом.

Насколько я знаю, кроме как "943-482, 54-55-65, 154-55-99, 4-866-888, 8-723-290-10-06, 8723-290-10-06" форматов записи (именно с дефисами) у нас не бывает.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156104
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а.. вы усовершенствовали в этом смысле. ок.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156189
Usual Suspect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ррмяфПонятно, что хотел автор? Нужно разбирать все возможные форматы записей телефонных номеров , на просто чисел разделенных дефисом.

Насколько я знаю, кроме как "943-482, 54-55-65, 154-55-99, 4-866-888, 8-723-290-10-06, 8723-290-10-06" форматов записи (именно с дефисами) у нас не бывает.Тогда можно две подзадачи выделить. Вариант: замена дефисов в известных форматах записи телефонных номеров. И вариант: замена дефисов в словах, состоящих ТОЛЬКО из цифр и дефисов, без букв (что я и имел в виду изначально). Т.е. отбраковывать слова вроде "ГАЗ-21011", "3-4-комн." и т.д. 20000-25000 руб и 20-35 лет в таком варианте заменяются, а в первом пропускаются, но это терпимо. Но зато я не знаю такого формата записи телномеров: 9-666-99 и не мог бы его предугадать в своем регекспе, т.о. пропустил бы такой вариант.

mysterio s.replaceAll("(?<=\\d)-(?=\\d)", " $1$2 ")? Вот знания этих (?!) (?:) конструкций мне как раз и не хватает
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156211
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usual SuspectИ вариант: замена дефисов в словах, состоящих ТОЛЬКО из цифр и дефисов, без букв (что я и имел в виду изначально).
Я до сегодняшнего дня не знал как строить регекспы. Но насколько я понял - он считает "45-99-88" тремя разными словами.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156215
Фотография ррмяф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Usual Suspect
Я не понимаю, чем вам в принципе не нравится мой вариант? :)
Попытка убрать дефисы в любых сочетаниях дефисов и цифр - мне кажется неправильной, поскольку это не то, что требовалось изначально.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34156239
Usual Suspect
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ррмяф Usual SuspectИ вариант: замена дефисов в словах, состоящих ТОЛЬКО из цифр и дефисов, без букв (что я и имел в виду изначально).
Я до сегодняшнего дня не знал как строить регекспы. Но насколько я понял - он считает "45-99-88" тремя разными словами.Слово это то что между \b и \b. В моем случае включая "-", "-" не считаем разделителем слов. Хотя вполне возможно дефис как раз считается разделителем слов, тогда мне надо как-то обойти эту условность.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34157378
Зашедший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ррмяфНасколько я знаю, кроме как "943-482, 54-55-65, 154-55-99, 4-866-888, 8-723-290-10-06, 8723-290-10-06" форматов записи (именно с дефисами) у нас не бывает.
Ответ неверный. Часто встречаются форматы типа "4-18", "5-12" и т.п. - в небольших поселках, где собственная АТС и номеров немного, а также внутренние номера в куче заведений.
...
Рейтинг: 0 / 0
Помогите написать регексп
    #34157406
Зашедший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вообще я бы настроил некий файл со списком поддерживаемых форматов телефонов, проверял входящую строку по словам на наличие совпадений с одним из шаблонов, если совпадает - удалял дефисы.
...
Рейтинг: 0 / 0
25 сообщений из 30, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите написать регексп
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]