crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в [РЕШЕНО] QRegExp::RegExp2 и кодировка
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
RazrFalcon Дата 15.3.2011, 20:46
  РЕШЕНО!
QString temptext;
temptext = "{\blur6\fad(300,600)\fs70\pos(386,268)}монстры";
temptext.remove(QRegExp("\\{[^\\}]*\\}"));
qDebug()<<temptext;
Цитата
"монстры"


Работает даже без QRegExp::RegExp2
RazrFalcon Дата 15.3.2011, 17:03
 
temptext = "{\\blur6\\fad(300,600)\\fs70\\pos(386,268)}монстры";
//"{\blur6\fad(300,600)\fs70\pos(386,268)}монстры"

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

>>это в том случае если файл сохранён в UTF-8 (в меню можно посмотреть правка/Выбрать кодировку...)
пробовал все способы
Алексей Дата 15.3.2011, 12:54
  Сделай слэши в строке двойными:
"{\\blur6\\fad(300,600)\\fs70\\pos(386,268)}монстры"


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

это в том случае если файл сохранён в UTF-8 (в меню можно посмотреть правка/Выбрать кодировку...)
RazrFalcon Дата 14.3.2011, 14:17
 
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)}монстры"


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

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

Хмм... Вставило вывод криво, так будет понятней:
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 16.2.2025, 1:20