У меня проблема с QRegExp. Это мой источник. Я хотел бы, чтобы подстрока «Re:» и «Fwd:» была удалена:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QRegExp>
#include <iostream>
using namespace std;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QString s = "Fwd: Re: my subject line";
cout << "original string: " << s.toLatin1().data() << endl;
QRegExp rx("\\b(Re:|Fwd:)\\b");
rx.setCaseSensitivity(Qt::CaseInsensitive);
s.replace(rx,"");
cout << "replaced string: " << s.toLatin1().data() << endl;
}
Это не работает. Выход:
original string: Fwd: Re: my subject line
replaced string: Fwd: Re: my subject line
Если я удалю символ «:» в регулярном выражении, подстрока «Re» и «Fwd» будут удалены, но символ «:» останется в тексте.
Как установить выражение регулярного выражения для удаления из текста подстроки «Re:» и «Fwd:»?
С уважением.