Russian Qt Forum
Май 29, 2024, 12:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как проверить URL на валидность?  (Прочитано 7734 раз)
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« : Ноябрь 19, 2008, 00:10 »

Пример не срабатывает:

Код
C++ (Qt)
       QString line = "#test base";
       QUrl url(line, QUrl::TolerantMode);
       if(!url.isValid()) continue;

QUrl считает, что это валидный URL.
« Последнее редактирование: Ноябрь 19, 2008, 10:01 от Admin » Записан
Rcus
Гость
« Ответ #1 : Ноябрь 19, 2008, 00:33 »

хороший вопрос почему, по этому поводу можно почитать src\corelib\io\qurl.cpp Улыбающийся
по RFC1738 (см. секцию 5, BNF-формулы) вообще обязательно указывать схему Улыбающийся
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #2 : Ноябрь 19, 2008, 10:03 »

угу выставляю схему, типа
   
Код
C++ (Qt)
            QString line = "#test base";
            QUrl url(line, QUrl::TolerantMode);
            url.setSheme("http");
            if(!url.isValid()) continue;
 

легче не стало) исходов под рукой нет (
Записан
Admin
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1988



Просмотр профиля
« Ответ #3 : Ноябрь 21, 2008, 08:12 »

Как я понял из доки, только при составлении URL можноиспользовать isValid(), для сторонних URL нет. Так что буду юзать регулярку.
Записан
Ruzzz
Гость
« Ответ #4 : Ноябрь 03, 2009, 02:18 »

Из примера qt\demos\browser\browsermainwindow.cpp - QUrl guessUrlFromString(const QString &string), может кому пригодится Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.079 секунд. Запросов: 19.