Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Renji
1823 / 1241 / 288
Регистрация: 05.06.2014
Сообщений: 3,551
#1

"Или" в регулярном выражении - C++

15.08.2014, 15:42. Просмотров 185. Ответов 2
Метки нет (Все метки)

Пусть есть регулярное выражение вида "expression1|expression2|expression3|expression4" сравнивающее текст с четырьмя различными вариантами. Как в std::regex/boost::regex вытрясти из регулярного выражения какой именно вариант совпал? Единственное что приходит в голову - написать "(expression1)|(expression2)|(expression3)|(expression4)" и перебирать match[1].matched, match[2].matched... до победного конца. Но перебор это как-то некрасиво.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2014, 15:42     "Или" в регулярном выражении
Посмотрите здесь:

Разница между "==" и "=" в выражении - C++
if(x==0) if(x=0) Вообще,раньше думал,что вторая запись запрещена.Но компилятор разрешил.Каков механизм второй записи?

Найти ошибку в регулярном выражении - C++
Использую RegExpr модуль от Андрея Сорокина. Сделал небольшое изменение для удобства использования в билдере: const // EscChar =...

Получение подвыражений в регулярном выражении - C++
Цель: необходимо обнаруживать правильные относительные адреса в веб. Допустимый вид: file.php При этом могут быть разделены папки,...

Найти причины возникновения ошибки "Segmentation fault" в шаблонном лямбда-выражении (C++11) - C++
Добрый день. Есть такой код:template<typename ChipSelect, typename T = uint8_t> static T _readByte(uint8_t address) { ...

Что означает "%" в выражении mas[5]=rand()%99 ? - C++
Вот пишешь например mas=rand()%99 что означает % ? И еще srand((unsigned)time(NULL)); эт строка что значит?

Не учитывать перевод строки в регулярном выражении - C++
В PHP например есть модификатор "s" пример: "$regex = "/<html>.*</html>/s"; Если данный модификатор используется, метасимвол "точка"...

бинарный "++": "Counter" не определяет этот оператор или преобразование к типу приемлемо к встроенному - C++
бинарный "++": "Counter" не определяет этот оператор или преобразование к типу приемлемо к встроенному оператору #include <iostream> ...

"Чудеса типа float" или "Куда девалась информация?" - C++
кусок кода: int k=100; float sum=0; for (int i=; i<k; i++) for(int j=1; j<i; j++) sum+=1/(2*j+i) ...

Сгенерировать число "1" или "2" - C++
Как сделать с помощью функции rand генерацию числа в диапазоне от 0 до 1? Просто если пишу rand() % 1 то всё время выдаёт только одно и...

Определить, находится ли координата на "ободе", или за пределами, или внутри круга (найти ошибку) - C++
Задача: пользователь вводит радиус круга и координату точки (х,у). Нужно определить находиться ли координата на "ободе" круга или за...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
orange_fox
34 / 34 / 6
Регистрация: 06.04.2014
Сообщений: 189
15.08.2014, 17:49     "Или" в регулярном выражении #2
(expression1|expression2|expression3|expression4)
Renji
1823 / 1241 / 288
Регистрация: 05.06.2014
Сообщений: 3,551
15.08.2014, 18:25  [ТС]     "Или" в регулярном выражении #3
(expression1|expression2|expression3|expression4)
И как мне из этого узнать совпал текст с вариантом expression1 или expression4?
Yandex
Объявления
15.08.2014, 18:25     "Или" в регулярном выражении
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru