Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 34, средняя оценка - 4.62
setter1
0 / 0 / 0
Регистрация: 27.04.2011
Сообщений: 36
#1

Дайте пожалуйста рабочий пример регулярного выражения c++ - C++

09.06.2011, 00:03. Просмотров 4803. Ответов 3
Метки нет (Все метки)

Мне нужно что-то типа
C++
1
2
3
AnsiString regexp = /<b>(.*)<\/b>/i;
AnsiString str = "<b>Hello World!</b>";
preg_match(str, pegexp, result);
result = Hello World!

Как можно сделать подобную регулярку на c++? Я уже весь интернет перерыл, ничего не работает!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.06.2011, 00:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дайте пожалуйста рабочий пример регулярного выражения c++ (C++):

Интерфейсы в с++ дайте кто нибудь годный рабочий пример - C++
Суть вопроса: нигде не могу найти рабочий пример использования интерфейсов, то есть когда есть интерфес, есть класс внутри длл-ки и всё это...

Дайте рабочий файл с Class в cpp - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; void main() { class SportClass { public: String Fio; float...

MVC дайте пример - C++
Столько прочитал книг и статей про этот шаблон,прочитал так же про другие шаблоны GoF...все понимаю,а применить не могу:confused: Все...

Дайте ссылку или пример на интересующий меня вопрос. - C++
//Мне нужно сохранить информацию в массив структур FRAGMENT. //Сруктура выглит так: struct FRAGMENT { int counter; //...

Дайте алгоритм, пожалуйста =)) - C++
Связной граф задан матрицей смежности. Написать программу для поиска всех циклов графа. Я уже сам задал матрицу смежности, а что дольше...

Дайте пожалуйста ответы - C++
1) Почему при объявлении матрицы с одновременной инициализацией первые скобки можно оставить пустыми, а вторые нет? 2) Как вывести...

3
igorrr37
1648 / 1276 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
09.06.2011, 01:29 #2
совпадает ли строка с шаблоном
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
#include <boost/regex.hpp> // libboost_regex.a
 
int main(){
    std::string s="<b>Hello World!</b>";
    boost::regex reg("<b>.*</b>");
    boost::smatch res;
    std::cout<<std::boolalpha<<boost::regex_match(s, res, reg)<<std::endl;
    std::cout<<res[0]<<std::endl;
    return 0;
}
1
setter1
0 / 0 / 0
Регистрация: 27.04.2011
Сообщений: 36
09.06.2011, 10:13  [ТС] #3
А можно пожалуйста пример ближе к c++Builder. Я просто в нем пишу.
Вот я попытался вытащить Hello World!:
C++
1
2
3
4
5
    std::string s="<b>Hello World!</b>";
    boost::regex reg("<b>.*</b>");
    boost::smatch res;
    boost::regex_match(s, res, reg);
    ShowMessage(AnsiString(res[0].str().c_str()));
Так он мне вообще исходный текст "<b>Hello World!</b>" выводит.

изменил res[0] на res[1], сработало.
спасибо.

Добавлено через 43 минуты
А почему если в исходном тексте "<b>Hello World!</b>" добавить какой-нибудь текст "bla bla<b>Hello World!</b>"
То регулярное выражение "<b>(.*)</b>"
вернет пустой результат?
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
09.06.2011, 10:35 #4
Цитата Сообщение от setter1 Посмотреть сообщение
То регулярное выражение "<b>(.*)</b>"
вернет пустой результат?
Потому что regex_match проверяет всю строку в точности. Для вашего варианта надо использовать regex_search

Добавлено через 1 минуту
либо для конрретного случая:
(.*?)<b>(.*)</b>
0
09.06.2011, 10:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2011, 10:35
Привет! Вот еще темы с ответами:

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

Дайте, пожалуйста, контрпримеры - C++
Задача №93 в acmp задание в тему

Нужен рабочий пример решения СЛАУ методом Гаусса - C++
Нужен рабочий (ну или более менее рабочий) код для решения СЛАУ методом Гауса на С++. Уже замучился искать

Дайте , пожалуйста, подсказки по коду - C++
Добрый день! Подскажите, пожалуйста, по коду ниже. Это несложный код из книги Р. Лафоре. #include &lt;iostream&gt; using namespace std; ...


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

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

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