|
|
||||||
Регулярное выражение boost::regex18.04.2015, 10:55. Показов 1673. Ответов 13
Метки нет (Все метки)
Здравствуйте форумчане.
Не получается написать регулярное выражения для разбора такой строки:
p1, p2 - любой буквенно-цифровой текст. Мне необходимо заполнить std::multimap именами параметров и их значениями. Добавлено через 11 минут Забыл добавить, количество значений p1, p2 ... pn у параметров не ограничено. Добавлено через 6 минут Ссылка на код: https://ideone.com/QfzmOT
0
|
||||||
| 18.04.2015, 10:55 | |
|
Ответы с готовыми решениями:
13
Возможно ли найти расположение подстроки в строке через регулярное выражение std::regex? std::regex и boost::regex Boost regex поиск в массиве |
|
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
|
||||||
| 18.04.2015, 11:01 | ||||||
1
|
||||||
|
|
||||||||||||
| 18.04.2015, 11:22 [ТС] | ||||||||||||
|
nmcf, а если там будет больше трех параметров? Допустим:
1. Найти все параметры со значениями в строке:
0
|
||||||||||||
|
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
|
|
| 18.04.2015, 11:25 | |
|
QVO, выдирайте подстроку,а её в цикле бейте по запятым.
0
|
|
|
|
||||||
| 18.04.2015, 11:31 | ||||||
А вообще то для такой задачи надо использовать boost.spirit
2
|
||||||
|
|
|
| 18.04.2015, 12:08 | |
|
1
|
|
|
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
|
||||||
| 18.04.2015, 13:30 | ||||||
Сообщение было отмечено QVO как решение
Решение
1
|
||||||
|
|
|
| 18.04.2015, 14:09 | |
|
QVO, я не эксперт в этой библиотеке, только поверхностно с ней работал. Если будет время, попробую потом написать грамматику для данного случая.
Добавлено через 1 минуту В разделе Boost есть пару примеров по spirit.
0
|
|
|
|
|
| 18.04.2015, 22:29 [ТС] | |
|
DiffEreD, написал код, но он не компилируется... может будут какие-то приложения? Ошибка: static assertion failed: error_invalid_expression BOOST_SPIRIT_ASSERT_MATCH(qi::domain, Expr)
0
|
|
|
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
|
|
| 18.04.2015, 22:38 | |
|
Чем мой вариант не устроил?
0
|
|
|
|
||||||
| 19.04.2015, 00:25 | ||||||
|
По spirit могу предложить такой вариант:
вывод
Enter expr: g=p1#s=p1,p2#t=p1#z=p3,p4,p10
g p1 s p1 s p2 t p1 z p3 z p4 z p10 Enter expr:
1
|
||||||
| 19.04.2015, 00:25 | |
|
Помогаю со студенческими работами здесь
14
Boost Regex, работа с указателями Парсер лога с использованием boost::regex Вылетает boost::regex в windows forms, в консоли всё нормально Boost::regex не могу сформировать ссылку на паттерн при поиске Регулярное выражение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|