Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 15.05.2016
Сообщений: 3
1

Некорретно обрабатываются регулярные выражения

15.05.2016, 21:53. Показов 648. Ответов 1

Author24 — интернет-сервис помощи студентам
Здравствуйте, форумчане.
Есть следующий пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <regex>
 
int main() {
    
    std::string str("subject, subbase");
    std::regex rx("sub\\w*");
    std::smatch res;
 
    std::regex_search(str, res, rx);     
    
    for(auto &i: res) {
        std::cout << i << " ";
    }
 
    return 0;
}
Output:
subject

Я ожидал вывод обоих слов из str, и тут мне подсвечивают как раз оба слова. G++ (GCC) 6.1.1 . Может я не правильно понял принцип работы функции regex_search? Она должна все совпадения внести в res.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2016, 21:53
Ответы с готовыми решениями:

Регулярные выражения в g++
Привет всем! этот пример взял из http://www.cplusplus.com/reference/regex/regex_search/ и...

Регулярные выражения
Доброй ночи! Использую вот такой код void INITDIALOG(void* p){ char* bufer = new char;...

Регулярные выражения с++11
Просветите, пожалуйста, как из следующей строки &quot;123&lt;tag&gt;456&lt;/tag&gt;789&lt;tag&gt;987&lt;/tag&gt;654321&quot; с...

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

1
7795 / 6561 / 2985
Регистрация: 14.04.2014
Сообщений: 28,683
15.05.2016, 23:39 2
Про "жадность" почитай. Так попробуй:
C++
1
std::regex rx("sub\\w*?");
0
15.05.2016, 23:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2016, 23:39
Помогаю со студенческими работами здесь

Регулярные выражения
Помогите написать регулярку. Пишу на RE2. Если в тексте встречается ******.moikrug.ru то нужно...

Регулярные выражения на C++
Здраствуйте, возникла необходимость использовать регурные выражения в Си++. Первое что пришло в...

регулярные выражения
прочитал статю http://www.opennet.ru/base/dev/pcre_cpp.txt.html про регулярные выражения в c++ ...

[C++] Регулярные выражения
Знаю что в стандарте С нет регулярных выражений. Хочу попробывать собрать простую функцию поиска...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru