|
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 21
|
|
Regex13.02.2020, 14:28. Показов 2806. Ответов 7
Добрый день.
Имеется строка формата «слово1_слово2-цифра-слово3-цифра. Как можно разделить данные строку на компоненты: - слово1 - слово2-цифра (цифры может и не быть «слово1_слово2-слово3-цифра») - слово3-цифра Для первого я написал такой вот запрос: (<.+(?=\_), насколько он корректен? Слышал, что .+ не стоит использовать. Пока не понял почему. Может кто знает? Чем заменить? Со вторым и третьим запросом пока не разобрался совсем.
0
|
|
| 13.02.2020, 14:28 | |
|
Ответы с готовыми решениями:
7
Regex \cX, \cx Regex \e Regex ? |
|
14 / 9 / 5
Регистрация: 26.09.2018
Сообщений: 73
|
|
| 13.02.2020, 14:39 | |
|
а что выступает в роли разделителя пробел или нижнее подчеркивание?
0
|
|
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|||||||
| 13.02.2020, 14:44 | |||||||
Сообщение было отмечено eugenelly как решение
Решение
eugenelly, здравствуйте.
[\s\S]+Всё зависит от того, насколько нужны на работе регулярные выражения. Если встречаются часто, то плохое знание регулярных выражений для программиста недопустимо.
1
|
|||||||
|
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 21
|
|
| 13.02.2020, 14:51 [ТС] | |
|
Ну во входной строке несколько разделителей: одно подчеркивание и 2-3 тире.
Строка может быть двух форматов: Либо «слово1_слово2-цифра-слово3-цифра» Либо «слово1_слово2-слово3-цифра» И нужно подобрать универсальное решени решение для двух типов. Чтоб запрос делил: «слово1» «слово2-цифра» (если цифра есть) или слово2 (если цифры нет) «слово3-цифра» Возможно ли сделать это без подсчета «-» и выполнения двух разных ветвей regex запроса? Хочется по-простому. Ведь самые простые решения - самые правильные
0
|
|
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|
| 13.02.2020, 14:54 | |
Сообщение было отмечено eugenelly как решение
Решение
eugenelly, самое простое решение - изучить тему регулярных выражений.
Иначе человек будет похож на известного персонажа, который изобретает миллион способов не выполнять взятые на себя обязательства.
1
|
|
|
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 21
|
|
| 13.02.2020, 16:24 [ТС] | |
|
amr-now, я с вами полностью согласен. Изучить их нужно, в любом раскладе. Есть какое-то общее понимание (читал несколько статей), но не хватает практики для понимания и запоминания. Со временем обязательно изучу и освою. А так, впрочем, сейчас они мне и нужны в роли практики. Сам я работаю на должности инженера-конструктора. Но так совпало, что начальнику пришла идея написать программу по расчётам, а я тут в отделе такой попался, который шарит в программировании немного. Мне хорошо, что не буду копаться с чертежами и моделями, а займусь тем, чем мне нравится заниматься, так ещё отличную практику получу, в реальном проекте. А то программирование в институте было, но его не было достаточно. Только поработав над этим проектом, я до конца разобрался в классах, в функциях, в свойствах и событиях, научился программно подключаться к модулям excel и access, и создавать простенькие Regex запросы. C# начал изучать, как платформу быстрого решения поставленных мне задач. А в основном изучаю фронт и бэк для создания сайтов. Немного администрирование Linux’a.
Regex начал изучать совсем недавно. Для проекта я написал сам 3 запроса, которые были относительно простые. А тут, видимо, требуется изучать технологию глубже, чтоб достигнуть того же мастерства, что и вы. Спасибо, что помогли с решением задачи. Просто изучение займёт какое-то время, а результат начальник требует как можно скорее. Поэтому приходится идти на крайние меры и спрашивать у знатоков.
0
|
|
|
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
|
|
| 13.02.2020, 16:34 | |
Сообщение было отмечено eugenelly как решение
Решение
eugenelly, поскольку "А в основном изучаю фронт и бэк для создания сайтов",
то JavaScript в лицо видели. Идеальный справочник по регулярным выражениям, чтобы быстро понять суть: https://learn.javascript.ru/regular-expressions Справка от Microsoft по регулярным выражениям в разы непонятнее. Регулярные выражения в JS и C# немножко различаются, но после изучения темы становятся как родные.
0
|
|
|
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 21
|
|
| 13.02.2020, 17:23 [ТС] | |
|
amr-now, да, я с этим сайтом уже знаком. Список моих любимых сайтов по вебу:
Html/css: webref.ru, html5css.ru, html5book.ru, w3schools.com, developer.mozilla.org Php: php.net Mysql: mysql.ru И как раз по JS: learn.javascript.ru Единственное, я редко обращаюсь к данным источникам т.к. привык учиться по старинке - по книгам Да и если честно, не думал, что там будут рассказывать о технологии Regex, да ещё так качественно. Пожалуй придётся посидеть пару вечеров и внедриться в тему поглубже. Как раз на выходных будет, чем заняться. Спасибо вам за рекомендацию. Все чётко и по делу.
1
|
|
| 13.02.2020, 17:23 | |
|
Помогаю со студенческими работами здесь
8
Regex Regex regex
Regex Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|