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

Регулярные выражения, Поиск всех видов чисел в строке, CString - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вызов методов класса http://www.cyberforum.ru/cpp-beginners/thread1165205.html
Здравствуйте! При компиляции программы(в среде CodeBloks) выдается такая ошибка: request for member 'Arrayss:: array_proc' in 'j', which is of non-class type 'Arrayss()' Файл main23.cpp: #include "classes.h" int main() { Arrayss j(); j.Arrayss::array_proc(); return 0;
C++ Ввод-вывод элементов одномерного массива Помогите написать программу для ввода элементов одномерного массива, вывода этого массива на экран. Вычислить среднее арифметическое значение элементов между максимальным и минимальным элементами. http://www.cyberforum.ru/cpp-beginners/thread1165186.html
Написать программу для вычисления ряда C++
Здравствуйте, помогите написать программу для вычисления суммы элементов ряда y1 с заданной точностью e(e>0) и сумму N элементов ряда y2; Заранее спасибо.
C++ Наследование контейнера
А можно ли создать класс, который будет наследовать все функции от vector'a, и собрать его в dll, чтобы подключить на C#?
C++ Игра в карты http://www.cyberforum.ru/cpp-beginners/thread1165169.html
Делаю игру, симулирующую игру в дурака в консоли. Пока вместо карт поставил просто числа. Большее число бьет меньшее)). Остановился на этом этапе. Код компилируется, запускается, но заканчивается ошибкой. Где ошибка? Или подскажите как пользоваться отладчиком CodeBlocks #include <iostream> #include <conio.h> #include <vector> #include <ctime> #include <cstdlib> using namespace std; ...
C++ Запуск .exe с параметрами? как реализовать на С++ следующее: запускать приложение с параметрами и выполнять при получении нужного параметра нужную функцию? подробнее

Показать сообщение отдельно
BlackSpace
135 / 128 / 50
Регистрация: 15.03.2014
Сообщений: 275
04.05.2014, 03:10     Регулярные выражения, Поиск всех видов чисел в строке, CString
Цитата Сообщение от rusianvodka Посмотреть сообщение
Единственная проблема это то что он не выдёргивает 0xa11 целиком. Он делит пополам и получается 0 и 11.
Можно дописать регулярное выражение. Я опять изменил строку чтобы предусмотреть разные случаи. Обратите внимание на вывод программы, когда в строке встречаются случаи 0XxXxXFF или 0Xabc0x44 или 0xab240X2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <boost/regex.hpp>
#include <iostream>
 
int main()
{
    std::string line = " int z, a=-+245;int b = -4.6567-55.6..,7..7;int b = -0x34 0xa11;0Xabc0x44}{-+0xE34 0XxXxXFF 0XABC12/0X45-0xf int c = 01.1.1.2; -1.04e12for(int a = 1;i<123; i++) \";a=-437-(-0xab240X2) +3.12085E-12";
    boost::regex regex_float( "[\\+|-]?((\\d+\\.?\\d*)|(\\.\\d+))([e|E][\\+|-]?\\d+)?([0x|0X](([A-F|a-f])+|(\\d)+)+)?" );
 
    for ( boost::sregex_iterator it( line.begin(), line.end(), regex_float ); it != boost::sregex_iterator(); ++it )
        std::cout << *it << "  ";
 
    return 0;
}
Вывод программы
Код
+245  -4.6567  -55.6  7.  .7  -0x34  0xa11  0Xabc0  44  +0xE34  0  0XABC12  0X45  -0xf  01.1  .1  .2  -1.04e12  1  123  -437  -0xab240  2  +3.12085E-12
 
Текущее время: 17:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru