0 / 0 / 0
Регистрация: 29.10.2014
Сообщений: 30
1

Есть ли инструкция по использованию std::regex

10.06.2015, 15:34. Показов 4597. Ответов 7
Метки нет (Все метки)

Есть какой-то мануальчик по использованию сего чуда в c++11?
Ну или подскажите как найти в поле string все href вне зависимости от синтаксиса (Будь то Href, HREF, href, hRef и т д)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.06.2015, 15:34
Ответы с готовыми решениями:

Инструкция по использованию офисной техники
Здравствуйте! Есть ли у кого на форуме инструкция или же пособие справочник для офиса, по работе с...

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

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

Std::regex не работает
Здравствуйте, имеется регекс для следущего паттерна: "слово пробел слово newline . Что-то вроде...

7
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
10.06.2015, 15:39 2
Когда regex создаёшь, используй флаг icase вместе в ECMAScript (второй параметр).
0
0 / 0 / 0
Регистрация: 29.10.2014
Сообщений: 30
11.06.2015, 00:18  [ТС] 3
а почему у меня даже вот этот код выдает ошибку? взят от сюда http://www.cplusplus.com/refer... ex_search/
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// regex_search example
#include <iostream>
#include <string>
#include <regex>
 
int main ()
{
  std::string s ("this subject has a submarine as a subsequence");
  std::smatch m;
  std::regex e ("\\b(sub)([^ ]*)");   // matches words beginning by "sub"
 
  std::cout << "Target sequence: " << s << std::endl;
  std::cout << "Regular expression: /\\b(sub)([^ ]*)/" << std::endl;
  std::cout << "The following matches and submatches were found:" << std::endl;
 
  while (std::regex_search (s,m,e)) {
    for (auto x:m) std::cout << x << " ";
    std::cout << std::endl;
    s = m.suffix().str();
  }
 
  return 0;
}
точнее пишет what():regex_error
0
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
11.06.2015, 00:40 4
Какой у тебя компилятор?
0
0 / 0 / 0
Регистрация: 29.10.2014
Сообщений: 30
11.06.2015, 00:50  [ТС] 5
g++ -std=c++11
0
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
11.06.2015, 00:59 6
Версия g++ должна быть самая последняя, а именно 5.1.
Регулярки в более ранних версиях либо реализованы криво, либо никак.
1
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
11.06.2015, 01:03 7
если с регулярками не выйдет, конкретно эту задачку можно решить тупым переводом строки в нижний регистр и в ней уже искать href.
1
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
11.06.2015, 07:51 8
Без учёта регистра.
C++
1
std::regex e ("\\b(sub)([^ ]*)", std::regex::ECMAScript | std::regex::icase);
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.06.2015, 07:51
Помогаю со студенческими работами здесь

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

Подскажите справочные материалы по регулярным выражениям std::regex
Помогите разобраться с синтаксисом регулярных выражений для std::regex. Работаю в VS 2012. Нашел...

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

Возможно ли найти расположение подстроки в строке через регулярное выражение std::regex?
Слышал, что C# позволяет с помощью regex определять начало найденной подстроки и её длину....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru