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

Компиляция шаблонов регулярных выражений (regex) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не могу убрать знак переноса строки http://www.cyberforum.ru/cpp-beginners/thread820484.html
Никак не получается убрать перенос строки. Помогите пожалуйста. Бьюсь уже несколько часов. #include <stdio.h> #include <stdlib.h> #include <Windows.h> #include <string.h> int main() {
C++ динамические массивы Здравствуйте, Посмотрите ,пожалуйста,задачу! Задание(общая схема алгоритма) 1.Запросить у пользователя максимально возможную по условиям задачи длину LenMax строки. 2.Создать динамический символьный массив данного размера(LenMax). 3.Запросить у пользователя исходную строку и записать ее в... http://www.cyberforum.ru/cpp-beginners/thread820470.html
Сумма цифр дробной части C++
Всем привет! Весь день пытаюсь найти ошибку в своей программе. Задача вот такая: Найдите сумму первых трех цифр дробной части вещественного числа. Например, для числа 23,16809 она равна 15. Написал следующий код на Си: #include <stdio.h> #include <conio.h> void main (void) { float f;
Проблемы с поисковиками. Помоготе пожалуйста C++
Здравствуйте уважаемые форумчане! Прошу помощи у Вас. Проблема не конкретно у меня а у знакомой. Она пользуется интернетом через модем МТС. Но проблема заключается в другом, она не может заходить в поисковики и многие сайты. Выводится сообщение : "Сертификат безопасности сайта не является доверенным! Вы попытались перейти на сайт www.google.ru, но сервер предоставил сертификат, выданный...
C++ класс prompt http://www.cyberforum.ru/cpp-beginners/thread820429.html
Создайте класс prompt. Для вывода на экран строки-приглашения включите в класс конструктор. Помимо строки-приглашения конструктор должен выполнить ввод набранного вами целого. Сохраните это значение в закрытой переменной count. При удалении объекта типа prompt должно быть выдано столько звуковых сигналов (символов в потоке вывода «\а»)> сколько задано пользователем в переменной count.
C++ класс timer Создайте класс timer, определив в нем конструктор и деструктор. Объект класса timer предназначен для измерения временного интервала между его созданием и удалением. При вызове деструктора на экран выводится прошедшее с момента создания объекта время в секундах. В программе используйте стандартную библиотечную функцию clock() (библиотека time.h). которая возвращает число временных циклов с момента... подробнее

Показать сообщение отдельно
Mr. Hat
2 / 2 / 0
Регистрация: 17.02.2012
Сообщений: 68

Компиляция шаблонов регулярных выражений (regex) - C++

27.03.2013, 21:22. Просмотров 497. Ответов 1
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
#include<regex>
using namespace std;
 
int main() {
    const string Dbl_p="[\\+|-]?((\\d+\\.?\\d*)|(\\.\\d+))([e|E][\\+|-]?\\d+)?";
                    //шаблон для вещественных чисел
 
    string s=Dbl_p+Dbl_p+Dbl_p+Dbl_p+Dbl_p+Dbl_p+Dbl_p+Dbl_p;
    regex pat=regex(s);
}
При попытке на последней строчке создать объект regex возникает ошибка (std::tr1::regex_error at memory location 0x0034d068.. - конкретно она появляется в функции _Compile() где-то в глубинах стандартной библиотеки. То же самое происходит, если неправильно записать шаблон - лишнюю скобку поставить, к примеру). Если убрать хотя бы один "+Dbl_p", ошибка исчезает. От длины строки s ничего не зависит, в нее можно 500 символов записать, и все будет нормально работать. Может, там есть ограниение на сложность выражений? Я могу, конечно, разбивать выражения на более мелкие и усложнять код, но мне кажется, что у этой проблемы должно быть более красивое решение.

И еще вопрос: как, имея строку в стиле языка C типа const char*, получить строку типа char* с таким же содержанием? Просто функция из WinAPI требует параметр типа char* (хотя по идее эта функция не меняет содержимое строки), и приходится использовать преобразование const_cast, но с этими преобразованиями вроде вообще не рекомендуется работать, если ты не пишешь драйвера для устройств. Есть какой-нибудь способ это сделать без того чтобы руками переписывать символы с одного места на другое?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru