Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Регулярные выражения в Qt
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Общие вопросы
tatiro
Не могу разобраться с классом QRegExp.
На perl я делаю так:
if( $html =~ /^.*<title>(.*)<\/title>.*$/msg) {
$title = $1;
}
Другими словами я получаю то, что написанно в <title>Мой заголовок</title>, но вот как подобное сделать с помощью QRegExp ума не приложу. :(
ViGOur
Все просто, это делается примерно так:
    QString szData;

    // ...

    QString szTitle;
    QRegExp rx( "<title>(.*)</title>");
    int pos1 = rx.indexIn( szData);
    if (pos1 > -1)
    {
        szTitle = rx.cap( 1);
    }
Соответственно в szData должен быть записан твой HTML документ.
tatiro
Спасибо, работает. :)

Но вот не понятно, почему не работает мое регулярное выражение "~ /^.*<title>(.*)<\/title>.*$/msg"?

p.s. хехе, быстро отвечаешь!
ViGOur
Я плохо знаю регулярные выражения, можно сказать, что и не знаю, а из "~ /^.*<title>(.*)<\/title>.*$/msg" я понял только, что значит (.*) :)
Может просто не правильно составлено, потому и не работает.
Попробовать составление в Qt регулярных выражение можно с помощью: Regular Expressions Example

p.s. есть такое дело
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.