Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
InferernumDeus
7 / 7 / 10
Регистрация: 13.08.2012
Сообщений: 250
#1

Подскажите справочные материалы по регулярным выражениям std::regex - C++

31.10.2014, 14:21. Просмотров 736. Ответов 2
Метки нет (Все метки)

Помогите разобраться с синтаксисом регулярных выражений для std::regex.
Работаю в VS 2012.
Нашел некий список на сайте Microsoft, но что-то не получается применить выражения из него:
http://msdn.microsoft.com/ru-ru/library/az24scfc.aspx
Этот пример выдаёт 3 пустые строки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
using namespace std;
#include "stdafx.h"
#include <regex>
#include <iostream>
 
typedef std::match_results<const char*> cmatch;
 
int main()
{
    std::cmatch res;
    std::string str = "14 5";
    std::regex rx("[]");
    regex_search(str.begin(), str.end(), rx);
    
    std::cout << res[1] << "\n";
    std::cout << res[2] << "\n";
    std::cout << res[3] << "\n";
    system ("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2014, 14:21
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Подскажите справочные материалы по регулярным выражениям std::regex (C++):

C++ std::regex каким образом можно вывести все совпадения?
Работаю в Visual Studio 2012. Каким образом я могу получить значения всех...

Ошибка: E2034 Cannot convert 'int' to 'std::vector<std::vector<TRabbitCell,std::allocator<TRabbitCell>>...
Есть двухмерный вектор: std::vector&lt;std::vector&lt;TRabbitCell&gt; &gt; *cells(5,...

Ищу справочные материалы по стандартной библиотеке
Всем привет, можете пожалуйста подсказать какие есть функции в с++ , которые...

std::regex и boost::regex
Что-то я не пойму что реализация их различна ? #include &lt;iostream&gt; #include...

Std::regex не работает
Здравствуйте, имеется регекс для следущего паттерна: &quot;слово пробел слово...

Ошибка составления std::regex в C++11
Есть вот такой пример кода: #include &lt;iostream&gt; #include &lt;string&gt; #include...

2
S_el
2134 / 1662 / 354
Регистрация: 15.12.2013
Сообщений: 6,597
31.10.2014, 14:50 #2
InferernumDeus, можете еще здесь посмотреть:
http://ru.cppreference.com/w/cpp/regex

Добавлено через 19 минут
Есть отличная книга по регуляркам:
Джеффри Фридл - Регулярные выражения
и еще можете посмотреть:
Гойвертс Я., Левитан С. Регулярные выражения. Сборник рецептов.
Я пока исправил ваш пример,для вывода всех чисел из строки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <string>
#include <regex>
 
int main ()
{
  std::string s ("14 5");
  std::smatch m;
  std::regex e ("\\d");   
  while (std::regex_search (s,m,e)) {
    for (auto x:m) std::cout << x << " ";
    std::cout << std::endl;
    s = m.suffix().str();
  }
 
  return 0;
}
1
InferernumDeus
7 / 7 / 10
Регистрация: 13.08.2012
Сообщений: 250
05.11.2014, 13:52  [ТС] #3
Превосходно!
Именно это я и искал - элементарный пример работы с РВ.
Большое спасибо.
Почитаю Гойвертса.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2014, 13:52
Привет! Вот еще темы с решениями:

Есть ли инструкция по использованию std::regex
Есть какой-то мануальчик по использованию сего чуда в c++11? Ну или...

Подскажите учебник по регулярным выражениям
Увлекаюсь парсерами, а с регулярными выражениями как то туго получается. знаю...

справочные материалы
скиньте название книги или ссылку на какой нибудь обучающий курс, что бы...

Вопрос по регулярным выражениям.
Вопрос по регулярным выражениям. Есть строка приблизительно следующего вида...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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