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

Сделать валидатор - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Когнитивные карты http://www.cyberforum.ru/cpp/thread1619960.html
Доброго времени суток. Если кто сталкивался помогите решить. Нужно запрогать когнитивную карту, но не знаю с какой стороны подойти. Буду признателен за любую помощь Заранее спасибо!
C++ Игра "Жизнь" ( найти ошибку) Писал клеточный автомат "Жизнь"(описание можно посмотреть на википедии, либо в комментариях к коду ниже). Когда все вроде бы сделал, обнаружил, что алгоритм на самом деле работает не правильно.... http://www.cyberforum.ru/cpp/thread1619711.html
C++ Перемещение фигуры
Реализовать отображение на экране геометрической фигуры с возможностью перемещать ее с помощью клавиш(стрелки) и изменение цвета фигуры "+".
Информация о железе C++
Здравствуйте форумчане Очень нужно узнать информацию о: HDD(разделы, размер каждого раздела, сколько занято места) CPU(температура, загрузку каждого ядра) процессы(как в диспетчера задач) службы...
C++ Вычисление количества знаков после запятой http://www.cyberforum.ru/cpp/thread1617858.html
Написал функцию определяющую, что у числа менее 4 знаков после запятой. Помогите оптимизировать. bool rac(double a) { int c(0); a -= int(a); while (a - int(a) && c < 4) { ...
C++ Создать и подключить библиотеку в Dev-C++ Помогите пожалуйста. Необходимо создать библиотеку и exe файл. При запуске exe файла ввести 2 значения (a=число1, b=число2). Эти числа должны передаться библиотеке (dll) там сложиться и вернуться... подробнее

Показать сообщение отдельно
fised
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 17

Сделать валидатор - C++

22.12.2015, 20:32. Просмотров 453. Ответов 2
Метки (Все метки)

Здравствуйте, уважаемые) На форуме только поселился, если кто-то может помочь, то буду очень благодарен)
К сожалению, я не очень силен(надеюсь, что пока), в регулярных выражениях, да и с qt мало поработал, вопрос может показаться глупым, но ближе к делу)
Задача: написать валидатор, вводить можно строку - стока с указанием единиц измерения, к примеру 25645км_35м, где "_" - это пробел. Все это делается в qt.
Способов решения много, но я пошел самым, на мой взгляд, эффективным, а именно - регулярки.
Вообще мой код работает, но работает кое как, а точнее, строку вида "45км 5" принимает за верную.
Прошу помочь исправить данную проблему, и еще, помочь со следующим. Как сделать проверку введеных единиц измерения? В ТЗ не указано, что это надо учитывать, но логически будет неверно, если у нас будет строка "123см 23км", то есть что бы большие единицы шли перед малыми, а не после.
C++
1
2
3
4
5
6
7
8
9
10
11
12
QValidator::State ExampleValidator::validate( QString & input, int & pos ) const
{
    QRegExp rx("^\\d{1,}[к|д]?м+\\s+\\d{1,}([д|с]?м?)$"); 
    QRegExp rx2("^\\d{1,}[к|д]?м?\\s?$"); 
    if (input.contains(rx2)) 
    return QValidator::Intermediate; 
    if (input.contains(rx)) 
    return QValidator::Acceptable; 
    return QValidator::Invalid; 
 
 
}
З.Ы. Прошу строго не судить, только учусь.
З.Ы.Ы. Я правда пытался сам)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru