Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: [РЕШЕНО] QRegExp::RegExp2 и кодировка
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Общие вопросы
RazrFalcon
QString temptext;
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
temptext = "{\blur6\fad(300,600)\fs70\pos(386,268)}монстры";
temptext.remove(QRegExp("{[^}]*}",Qt::CaseInsensitive,QRegExp::RegExp2));
qDebug()<<temptext;
qDebug()<<QString::fromLocal8Bit(temptext.toAscii());


Цитата
"{lur6 ad(300,600) s70pos(386,268)}монстры"
"{lur6 ad(300,600) s70pos(386,268)}монстры"


Как победить?

Должно вывести "монстры"

Хмм... Вставило вывод криво, так будет понятней:
Алексей
Сделай слэши в строке двойными:
"{\\blur6\\fad(300,600)\\fs70\\pos(386,268)}монстры"


ПС
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));

это в том случае если файл сохранён в UTF-8 (в меню можно посмотреть правка/Выбрать кодировку...)
RazrFalcon
temptext = "{\\blur6\\fad(300,600)\\fs70\\pos(386,268)}монстры";
//"{\blur6\fad(300,600)\fs70\pos(386,268)}монстры"

Лучше, но RegExp не сработал.

>>это в том случае если файл сохранён в UTF-8 (в меню можно посмотреть правка/Выбрать кодировку...)
пробовал все способы
RazrFalcon
РЕШЕНО!
QString temptext;
temptext = "{\blur6\fad(300,600)\fs70\pos(386,268)}монстры";
temptext.remove(QRegExp("\\{[^\\}]*\\}"));
qDebug()<<temptext;
Цитата
"монстры"


Работает даже без QRegExp::RegExp2
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.