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

Проверка введенного url адреса на корректность - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Упростить функции http://www.cyberforum.ru/cpp-beginners/thread1107831.html
У меня есть 3 функции которые выполняют одинаковые вычисления, только с различными переменными, как мне можно реализовать 3 функции в одной, но так что бы в ней так и осталось 3 переменных? Я понимаю что это не так сложно, но все равно не могу сделать. #include <iostream> #include <iomanip> #include <math.h> using namespace std;
C++ Std::string размера 20 со строкой длины 10? Возможно ли, что std::string будет хранить в себе строку длиной в 10 символов, но при этом иметь внутри массив char'ов длиной 20? (10 и 20 - просто для примера) Если да, то каким будет результат length() и size()? Раньше полагал, что первый возвращает длину строки (10), а второй длину массива (20), но почитав: http://en.cppreference.com/w/cpp/string/basic_string/size... http://www.cyberforum.ru/cpp-beginners/thread1107828.html
C++ создать структуру автомобили
создать структуру автомобили, которая содержит следующую информацию: марка, объем двигателя, год выпуска, цена. Заполнить поля структуры, создав в ней 10 записей.Отсортировать записи по году выпуска по росту и вывести данные на экран.
Массивы. Определить сумму модулей элементов, расположенных после первого элемента, равного нулю C++
Создать функцию, которая для заданного массива, состоящего из N вещественных элементов, определяет сумму модулей элементов, расположенных после первого элемента, равного нулю. Преобразовать массив так, чтобы сначала располагались все положительные, а затем - все отрицательные элементы массива.
C++ создать структуру "книги" http://www.cyberforum.ru/cpp-beginners/thread1107807.html
создать структуру книги, содержащей следующую информацию: название, автор, год випуска ,цена. Заполнить поля структуры, создав в ней 10 записей,найты самую дорогую книгу и вывести информацию о ней на экран
C++ Сдвиги (С++) Создать функцию, которая позволяет в заданном диапазоне натуральных чисел найти и выдать на экран те числа, в двоичном представлении которых нечётное число единиц. Напечатать как двоичное, так и десятичное представление таких чисел. подробнее

Показать сообщение отдельно
DrOffset
6461 / 3835 / 886
Регистрация: 30.01.2014
Сообщений: 6,630
28.02.2014, 19:32     Проверка введенного url адреса на корректность
Цитата Сообщение от millworm Посмотреть сообщение
не могли бы подсказать как организовать проверку введенного url адреса на корректность?
Ну например так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <string>
#include <boost/regex.hpp>
 
int main()
{
    try
    {
        boost::regex urlCheck("^((https?)|(ftp))://"                         // protocol
            "(([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=-]|%[0-9a-f]{2})+"         // username
            "(:([a-z0-9$_\\.\\+!\\*\\'\\(\\),;\\?&=-]|%[0-9a-f]{2})+)?"      // password
            "@)?(?#"                                                         // auth requires @
            ")((([a-z0-9]\\.|[a-z0-9][a-z0-9-]*[a-z0-9]\\.)*"                // domain segments AND
            "[a-z][a-z0-9-]*[a-z0-9]"                                        // top level domain  OR
            "|((\\d|[1-9]\\d|1\\d{2}|2[0-4][0-9]|25[0-5])\\.){3}"
            "(\\d|[1-9]\\d|1\\d{2}|2[0-4][0-9]|25[0-5])"                     // IP address
            ")(:\\d+)?"                                                      // port
            ")(((\\/+([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=-]|%[0-9a-f]{2})*)*" // path
            "(\\?([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=-]|%[0-9a-f]{2})*)"      // query string
            "?)?)?"                                                          // path and query string optional
            "(#([a-z0-9$_\\.\\+!\\*\\'\\(\\),;:@&=-]|%[0-9a-f]{2})*)?"       // fragment
            "$");
 
        std::string url;
        std::getline(std::cin, url);
 
        if(boost::regex_match(url, urlCheck))
        {
            std::cout << "URL is correct.\n";
        }
        else
        {
            std::cout << "URL is not correct.\n";
        }
    }
    catch(std::exception const & e)
    {
        std::cerr << e.what();
    }
}
 
Текущее время: 18:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru