[LyX/master] Remove use of QRegExp
Jean-Marc Lasgouttes
lasgouttes at lyx.org
Fri Mar 3 08:50:39 UTC 2023
commit 263da2fa20ba30b60a4c752b692c6cb822664585
Author: Jean-Marc Lasgouttes <lasgouttes at lyx.org>
Date: Mon Feb 20 17:38:59 2023 +0100
Remove use of QRegExp
QRegexp has been replaced with QRegularExpression in Qt5. Now that we
have dropped support for Qt4, there is no need for keeping it around.
---
src/frontends/qt/CategorizedCombo.cpp | 7 --
src/frontends/qt/GuiAbout.cpp | 5 --
src/frontends/qt/GuiApplication.cpp | 13 +----
src/frontends/qt/GuiDocument.cpp | 5 --
src/frontends/qt/GuiListings.cpp | 8 ---
src/frontends/qt/GuiLog.cpp | 41 -------------
src/frontends/qt/GuiLog.h | 7 --
src/frontends/qt/GuiPrefs.cpp | 8 ---
src/frontends/qt/GuiTabular.cpp | 4 -
src/frontends/qt/GuiThesaurus.cpp | 28 ---------
src/frontends/qt/LaTeXHighlighter.cpp | 104 ---------------------------------
src/frontends/qt/LayoutBox.cpp | 5 --
src/frontends/qt/Validator.cpp | 4 -
src/support/qstring_helpers.cpp | 12 ++--
14 files changed, 8 insertions(+), 243 deletions(-)
diff --git a/src/frontends/qt/CategorizedCombo.cpp b/src/frontends/qt/CategorizedCombo.cpp
index 81cf89a..43ce6cb 100644
--- a/src/frontends/qt/CategorizedCombo.cpp
+++ b/src/frontends/qt/CategorizedCombo.cpp
@@ -34,9 +34,6 @@
#include <QSortFilterProxyModel>
#include <QStandardItemModel>
#include <QTextFrame>
-#if QT_VERSION >= 0x060000
-#include <QtCore5Compat/QRegExp>
-#endif
using namespace lyx::support;
@@ -273,11 +270,7 @@ QString CCItemDelegate::underlineFilter(QString const & s) const
if (f.isEmpty())
return s;
QString r(s);
-#if QT_VERSION < 0x060000
- QRegExp pattern(charFilterRegExpC(f));
-#else
QRegularExpression pattern(charFilterRegExpC(f));
-#endif
r.replace(pattern, "<u><b>\\1</b></u>");
return r;
}
diff --git a/src/frontends/qt/GuiAbout.cpp b/src/frontends/qt/GuiAbout.cpp
index 35375c9..539739b 100644
--- a/src/frontends/qt/GuiAbout.cpp
+++ b/src/frontends/qt/GuiAbout.cpp
@@ -127,13 +127,8 @@ static QString release_notes()
continue;
// detect links to the tracker
-#if QT_VERSION < 0x060000
- line.replace(QRegExp("(bug )(\\#)(\\d+)*"),
- "<a href=\"http://www.lyx.org/trac/ticket/\\3\">\\1\\3</a>");
-#else
line.replace(QRegularExpression("(bug )(\\#)(\\d+)*"),
"<a href=\"http://www.lyx.org/trac/ticket/\\3\">\\1\\3</a>");
-#endif
// headings
if (line.startsWith("!!!")) {
diff --git a/src/frontends/qt/GuiApplication.cpp b/src/frontends/qt/GuiApplication.cpp
index 25ca4b2..5750df9 100644
--- a/src/frontends/qt/GuiApplication.cpp
+++ b/src/frontends/qt/GuiApplication.cpp
@@ -111,7 +111,6 @@
#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0))
#include <QRandomGenerator>
#endif
-#include <QRegExp>
#include <QSessionManager>
#include <QSettings>
#include <QSocketNotifier>
@@ -2623,16 +2622,6 @@ void GuiApplication::createView(QString const & geometry_arg, bool autoShow,
int x, y;
int w, h;
QChar sx, sy;
-#if QT_VERSION < 0x060000
- QRegExp re( "[=]*(?:([0-9]+)[xX]([0-9]+)){0,1}[ ]*(?:([+-][0-9]*)){0,1}(?:([+-][0-9]*)){0,1}" );
- re.indexIn(geometry_arg);
- w = re.cap(1).toInt();
- h = re.cap(2).toInt();
- x = re.cap(3).toInt();
- y = re.cap(4).toInt();
- sx = re.cap(3).isEmpty() ? '+' : re.cap(3).at(0);
- sy = re.cap(4).isEmpty() ? '+' : re.cap(4).at(0);
-#else
QRegularExpression re( "[=]*(?:([0-9]+)[xX]([0-9]+)){0,1}[ ]*(?:([+-][0-9]*)){0,1}(?:([+-][0-9]*)){0,1}" );
QRegularExpressionMatch match = re.match(geometry_arg);
w = match.captured(1).toInt();
@@ -2641,7 +2630,7 @@ void GuiApplication::createView(QString const & geometry_arg, bool autoShow,
y = match.captured(4).toInt();
sx = match.captured(3).isEmpty() ? '+' : match.captured(3).at(0);
sy = match.captured(4).isEmpty() ? '+' : match.captured(4).at(0);
-#endif
+
// Set initial geometry such that we can get the frame size.
view->setGeometry(x, y, w, h);
int framewidth = view->geometry().x() - view->x();
diff --git a/src/frontends/qt/GuiDocument.cpp b/src/frontends/qt/GuiDocument.cpp
index a9a9ef4..8af5606 100644
--- a/src/frontends/qt/GuiDocument.cpp
+++ b/src/frontends/qt/GuiDocument.cpp
@@ -4002,13 +4002,8 @@ void GuiDocument::applyView()
pdf.pagemode.clear();
pdf.quoted_options = pdf.quoted_options_check(
fromqstr(pdfSupportModule->optionsTE->toPlainText()));
-#if QT_VERSION < 0x060000
- bp_.document_metadata = qstring_to_ucs4(pdfSupportModule->metadataTE->toPlainText()
- .trimmed().replace(QRegExp("\n+"), "\n"));
-#else
bp_.document_metadata = qstring_to_ucs4(pdfSupportModule->metadataTE->toPlainText()
.trimmed().replace(QRegularExpression("\n+"), "\n"));
-#endif
// change tracking
bp_.track_changes = changesModule->trackChangesCB->isChecked();
diff --git a/src/frontends/qt/GuiListings.cpp b/src/frontends/qt/GuiListings.cpp
index b1a1e8c..246cc2f 100644
--- a/src/frontends/qt/GuiListings.cpp
+++ b/src/frontends/qt/GuiListings.cpp
@@ -30,11 +30,7 @@
#include <QLineEdit>
#include <QPushButton>
#include <QValidator>
-#if QT_VERSION < 0x060000
-#include <QRegExpValidator>
-#else
#include <QRegularExpressionValidator>
-#endif
using namespace std;
using namespace lyx::support;
@@ -236,11 +232,7 @@ GuiListings::GuiListings(GuiView & lv)
numberStepLE->setValidator(new QIntValidator(0, 1000000, this));
firstlineLE->setValidator(new QIntValidator(0, 1000000, this));
lastlineLE->setValidator(new QIntValidator(0, 1000000, this));
-#if QT_VERSION < 0x060000
- placementLE->setValidator(new QRegExpValidator(QRegExp("[\\*tbph]*"), this));
-#else
placementLE->setValidator(new QRegularExpressionValidator(QRegularExpression("[\\*tbph]*"), this));
-#endif
bc().setPolicy(ButtonPolicy::NoRepeatedApplyReadOnlyPolicy);
bc().setOK(buttonBox->button(QDialogButtonBox::Ok));
diff --git a/src/frontends/qt/GuiLog.cpp b/src/frontends/qt/GuiLog.cpp
index f908c8f..9ad1673 100644
--- a/src/frontends/qt/GuiLog.cpp
+++ b/src/frontends/qt/GuiLog.cpp
@@ -41,21 +41,12 @@ namespace frontend {
// Regular expressions needed at several places
// FIXME: These regexes are incomplete. It would be good if we could collect those used in LaTeX::scanLogFile
// and LaTeX::scanBlgFile and re-use them here!(spitz, 2013-05-27)
-#if QT_VERSION < 0x060000
-// Information
-QRegExp exprInfo("^(Document Class:|LaTeX Font Info:|File:|Package:|Language:|.*> INFO - |\\(|\\\\).*$");
-// Warnings
-QRegExp exprWarning("^(## Warning|LaTeX Warning|LaTeX Font Warning|Package [\\w\\.]+ Warning|Class \\w+ Warning|Warning--|Underfull|Overfull|.*> WARN - ).*$");
-// Errors
-QRegExp exprError("^(ERROR: |!|.*---line [0-9]+ of file|.*> FATAL - |.*> ERROR - |Missing character: There is no ).*$");
-#else
// Information
QRegularExpression exprInfo("^(Document Class:|LaTeX Font Info:|File:|Package:|Language:|.*> INFO - |\\(|\\\\).*$");
// Warnings
QRegularExpression exprWarning("^(## Warning|LaTeX Warning|LaTeX Font Warning|Package [\\w\\-\\.]+ Warning|Class \\w+ Warning|Warning--|Underfull|Overfull|.*> WARN - ).*$");
// Errors
QRegularExpression exprError("^(ERROR: |!|.*---line [0-9]+ of file|.*> FATAL - |.*> ERROR - |Missing character: There is no ).*$");
-#endif
/////////////////////////////////////////////////////////////////////
@@ -91,29 +82,6 @@ LogHighlighter::LogHighlighter(QTextDocument * parent)
void LogHighlighter::highlightBlock(QString const & text)
{
-#if QT_VERSION < 0x060000
- // Info
- int index = exprInfo.indexIn(text);
- while (index >= 0) {
- int length = exprInfo.matchedLength();
- setFormat(index, length, infoFormat);
- index = exprInfo.indexIn(text, index + length);
- }
- // LaTeX Warning:
- index = exprWarning.indexIn(text);
- while (index >= 0) {
- int length = exprWarning.matchedLength();
- setFormat(index, length, warningFormat);
- index = exprWarning.indexIn(text, index + length);
- }
- // ! error
- index = exprError.indexIn(text);
- while (index >= 0) {
- int length = exprError.matchedLength();
- setFormat(index, length, errorFormat);
- index = exprError.indexIn(text, index + length);
- }
-#else
// Info
QRegularExpressionMatch match = exprInfo.match(text);
int index = match.capturedStart(1);
@@ -141,7 +109,6 @@ void LogHighlighter::highlightBlock(QString const & text)
match = exprError.match(text, index + length);
index = match.capturedStart(1);
}
-#endif
}
@@ -234,11 +201,7 @@ void GuiLog::on_openDirPB_clicked()
}
-#if QT_VERSION < 0x060000
-void GuiLog::goTo(QRegExp const & exp) const
-#else
void GuiLog::goTo(QRegularExpression const & exp) const
-#endif
{
QTextCursor const newc =
logTB->document()->find(exp, logTB->textCursor());
@@ -246,11 +209,7 @@ void GuiLog::goTo(QRegularExpression const & exp) const
}
-#if QT_VERSION < 0x060000
-bool GuiLog::contains(QRegExp const & exp) const
-#else
bool GuiLog::contains(QRegularExpression const & exp) const
-#endif
{
return !logTB->document()->find(exp, logTB->textCursor()).isNull();
}
diff --git a/src/frontends/qt/GuiLog.h b/src/frontends/qt/GuiLog.h
index cd62390..0ceb8d5 100644
--- a/src/frontends/qt/GuiLog.h
+++ b/src/frontends/qt/GuiLog.h
@@ -66,17 +66,10 @@ private:
docstring title() const;
/// put the log file into the ostream
void getContents(std::ostream & ss) const;
-#if QT_VERSION < 0x060000
- /// go to the next occurrence of the RegExp
- void goTo(QRegExp const & exp) const;
- /// does the document after cursor position contain the RegExp?
- bool contains(QRegExp const & exp) const;
-#else
/// go to the next occurrence of the RegExp
void goTo(QRegularExpression const & exp) const;
/// does the document after cursor position contain the RegExp?
bool contains(QRegularExpression const & exp) const;
-#endif
private:
/// Recognized log file-types
diff --git a/src/frontends/qt/GuiPrefs.cpp b/src/frontends/qt/GuiPrefs.cpp
index 9480dc2..4368b68 100644
--- a/src/frontends/qt/GuiPrefs.cpp
+++ b/src/frontends/qt/GuiPrefs.cpp
@@ -189,11 +189,7 @@ QString browseRelToSub(QString const & filename, QString const & relpath,
toqstr(makeRelPath(qstring_to_ucs4(outname), qstring_to_ucs4(relpath)));
QString testname = reloutname;
-#if QT_VERSION < 0x060000
- testname.remove(QRegExp("^(\\.\\./)+"));
-#else
testname.remove(QRegularExpression("^(\\.\\./)+"));
-#endif
if (testname.contains("/"))
return outname;
@@ -2469,11 +2465,7 @@ PrefLanguage::PrefLanguage(GuiPreferences * form)
startCommandED->setValidator(new NoNewLineValidator(startCommandED));
endCommandED->setValidator(new NoNewLineValidator(endCommandED));
-#if QT_VERSION < 0x060000
- defaultDecimalSepED->setValidator(new QRegExpValidator(QRegExp("\\S"), this));
-#else
defaultDecimalSepED->setValidator(new QRegularExpressionValidator(QRegularExpression("\\S"), this));
-#endif
defaultDecimalSepED->setMaxLength(1);
defaultLengthUnitCO->addItem(lyx::qt_(unit_name_gui[Length::CM]), Length::CM);
diff --git a/src/frontends/qt/GuiTabular.cpp b/src/frontends/qt/GuiTabular.cpp
index ddb6942..84012be 100644
--- a/src/frontends/qt/GuiTabular.cpp
+++ b/src/frontends/qt/GuiTabular.cpp
@@ -178,11 +178,7 @@ GuiTabular::GuiTabular(QWidget * parent)
connect(tabularWidthED, SIGNAL(textEdited(const QString &)),
this, SLOT(checkEnabled()));
-#if QT_VERSION < 0x060000
- decimalPointED->setValidator(new QRegExpValidator(QRegExp("\\S"), this));
-#else
decimalPointED->setValidator(new QRegularExpressionValidator(QRegularExpression("\\S"), this));
-#endif
decimalPointED->setMaxLength(1);
// initialize the length validator
diff --git a/src/frontends/qt/GuiThesaurus.cpp b/src/frontends/qt/GuiThesaurus.cpp
index f321956..e888cbf 100644
--- a/src/frontends/qt/GuiThesaurus.cpp
+++ b/src/frontends/qt/GuiThesaurus.cpp
@@ -124,22 +124,9 @@ void GuiThesaurus::selectionChanged()
QString item = meaningsTV->currentItem()->text(col);
// cut out the classification in brackets:
// "hominid (generic term)" -> "hominid"
-#if QT_VERSION < 0x060000
- QRegExp re("^([^\\(\\)]+)\\b\\(?.*\\)?.*$");
-#else
QRegularExpression re("^([^\\(\\)]+)\\b\\(?.*\\)?.*$");
-#endif
// This is for items with classifications at the beginning:
// "(noun) man" -> "man"; "(noun) male (generic term)" -> "male"
-#if QT_VERSION < 0x060000
- QRegExp rex("^(\\(.+\\))\\s*([^\\(\\)]+)\\s*\\(?.*\\)?.*$");
- int pos = re.indexIn(item);
- if (pos > -1)
- item = re.cap(1).trimmed();
- pos = rex.indexIn(item);
- if (pos > -1)
- item = rex.cap(2).trimmed();
-#else
QRegularExpression rex("^(\\(.+\\))\\s*([^\\(\\)]+)\\s*\\(?.*\\)?.*$");
QRegularExpressionMatch match = re.match(item);
if (match.hasMatch())
@@ -147,7 +134,6 @@ void GuiThesaurus::selectionChanged()
match = rex.match(item);
if (match.hasMatch())
item = match.captured(2).trimmed();
-#endif
replaceED->setText(item);
replacePB->setEnabled(!isBufferReadonly());
changed();
@@ -165,22 +151,9 @@ void GuiThesaurus::selectionClicked(QTreeWidgetItem * item, int col)
QString str = item->text(col);
// cut out the classification in brackets:
// "hominid (generic term)" -> "hominid"
-#if QT_VERSION < 0x060000
- QRegExp re("^([^\\(\\)]+)\\b\\(?.*\\)?.*$");
-#else
QRegularExpression re("^([^\\(\\)]+)\\b\\(?.*\\)?.*$");
-#endif
// This is for items with classifications at the beginning:
// "(noun) man" -> "man"; "(noun) male (generic term)" -> "male"
-#if QT_VERSION < 0x060000
- QRegExp rex("^(\\(.+\\))\\s*([^\\(\\)]+)\\s*\\(?.*\\)?.*$");
- int pos = re.indexIn(str);
- if (pos > -1)
- str = re.cap(1).trimmed();
- pos = rex.indexIn(str);
- if (pos > -1)
- str = rex.cap(2).trimmed();
-#else
QRegularExpression rex("^(\\(.+\\))\\s*([^\\(\\)]+)\\s*\\(?.*\\)?.*$");
QRegularExpressionMatch match = re.match(str);
if (match.hasMatch())
@@ -188,7 +161,6 @@ void GuiThesaurus::selectionClicked(QTreeWidgetItem * item, int col)
match = rex.match(str);
if (match.hasMatch())
str = match.captured(2).trimmed();
-#endif
entryCO->insertItem(0, str);
entryCO->setCurrentIndex(0);
diff --git a/src/frontends/qt/LaTeXHighlighter.cpp b/src/frontends/qt/LaTeXHighlighter.cpp
index 80e7a09..8336f7a 100644
--- a/src/frontends/qt/LaTeXHighlighter.cpp
+++ b/src/frontends/qt/LaTeXHighlighter.cpp
@@ -46,109 +46,6 @@ LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent, bool at_letter, bool
void LaTeXHighlighter::highlightBlock(QString const & text)
{
-#if QT_VERSION < 0x060000
- // keyval
- if (keyval_) {
- // Highlight key-val options. Used in some option widgets.
- static const QRegExp exprKeyvalkey("[^=,]+");
- static const QRegExp exprKeyvalval("[^,]+");
- int kvindex = exprKeyvalkey.indexIn(text);
- while (kvindex >= 0) {
- int length = exprKeyvalkey.matchedLength();
- setFormat(kvindex, length, keyFormat);
- int kvvindex = exprKeyvalval.indexIn(text, kvindex + length);
- if (kvvindex > 0) {
- length += exprKeyvalval.matchedLength();
- setFormat(kvvindex, length, valFormat);
- }
- kvindex = exprKeyvalkey.indexIn(text, kvindex + length);
- }
- }
- // $ $
- static const QRegExp exprMath("\\$[^\\$]*\\$");
- int index = exprMath.indexIn(text);
- while (index >= 0) {
- int length = exprMath.matchedLength();
- setFormat(index, length, mathFormat);
- index = exprMath.indexIn(text, index + length);
- }
- // [ ]
- static const QRegExp exprStartDispMath("(\\\\\\[|"
- "\\\\begin\\{equation\\**\\}|"
- "\\\\begin\\{eqnarray\\**\\}|"
- "\\\\begin\\{align(ed|at)*\\**\\}|"
- "\\\\begin\\{flalign\\**\\}|"
- "\\\\begin\\{gather\\**\\}|"
- "\\\\begin\\{multline\\**\\}|"
- "\\\\begin\\{array\\**\\}|"
- "\\\\begin\\{cases\\**\\}"
- ")");
- static const QRegExp exprEndDispMath("(\\\\\\]|"
- "\\\\end\\{equation\\**\\}|"
- "\\\\end\\{eqnarray\\**\\}|"
- "\\\\end\\{align(ed|at)*\\**\\}|"
- "\\\\end\\{flalign\\**\\}|"
- "\\\\end\\{gather\\**\\}|"
- "\\\\end\\{multline\\**\\}|"
- "\\\\end\\{array\\**\\}|"
- "\\\\end\\{cases\\**\\}"
- ")");
- int startIndex = 0;
- // if previous block was in 'disp math'
- // start search from 0 (for end disp math)
- // otherwise, start search from 'begin disp math'
- if (previousBlockState() != 1)
- startIndex = exprStartDispMath.indexIn(text);
- while (startIndex >= 0) {
- int endIndex = exprEndDispMath.indexIn(text, startIndex);
- int length;
- if (endIndex == -1) {
- setCurrentBlockState(1);
- length = text.length() - startIndex;
- } else {
- length = endIndex - startIndex + exprEndDispMath.matchedLength();
- }
- setFormat(startIndex, length, mathFormat);
- startIndex = exprStartDispMath.indexIn(text, startIndex + length);
- }
- // \whatever
- static const QRegExp exprKeywordAtOther("\\\\[A-Za-z]+");
- // \wh at tever
- static const QRegExp exprKeywordAtLetter("\\\\[A-Za-z@]+");
- QRegExp const & exprKeyword = at_letter_ ? exprKeywordAtLetter
- : exprKeywordAtOther;
- index = exprKeyword.indexIn(text);
- while (index >= 0) {
- int length = exprKeyword.matchedLength();
- setFormat(index, length, keywordFormat);
- index = exprKeyword.indexIn(text, index + length);
- }
- // %comment
- // Treat a line as a comment starting at a percent sign
- // * that is the first character in a line
- // * that is preceded by
- // ** an even number of backslashes
- // ** any character other than a backslash
- QRegExp exprComment("(?:^|[^\\\\])(?:\\\\\\\\)*(%).*$");
- exprComment.indexIn(text);
- index = exprComment.pos(1);
- while (index >= 0) {
- int const length = exprComment.matchedLength()
- - (index - exprComment.pos(0));
- setFormat(index, length, commentFormat);
- exprComment.indexIn(text, index + length);
- index = exprComment.pos(1);
- }
- // <LyX Warning: ...>
- QString lyxwarn = qt_("LyX Warning: ");
- QRegExp exprWarning("<" + lyxwarn + "[^<]*>");
- index = exprWarning.indexIn(text);
- while (index >= 0) {
- int length = exprWarning.matchedLength();
- setFormat(index, length, warningFormat);
- index = exprWarning.indexIn(text, index + length);
- }
-#else
// keyval
if (keyval_) {
// Highlight key-val options. Used in some option widgets.
@@ -264,7 +161,6 @@ void LaTeXHighlighter::highlightBlock(QString const & text)
match = exprWarning.match(text, index + length);
index = match.capturedStart(0);
}
-#endif
}
} // namespace frontend
diff --git a/src/frontends/qt/LayoutBox.cpp b/src/frontends/qt/LayoutBox.cpp
index 5b15e98..573ec27 100644
--- a/src/frontends/qt/LayoutBox.cpp
+++ b/src/frontends/qt/LayoutBox.cpp
@@ -43,7 +43,6 @@
#include <QHeaderView>
#include <QItemDelegate>
#include <QPainter>
-#include <QRegExp>
#include <QSortFilterProxyModel>
#include <QStandardItemModel>
#include <QTextFrame>
@@ -300,11 +299,7 @@ QString LayoutItemDelegate::underlineFilter(QString const & s) const
if (f.isEmpty())
return s;
QString r(s);
-#if QT_VERSION < 0x060000
- QRegExp pattern(charFilterRegExpC(f));
-#else
QRegularExpression pattern(charFilterRegExpC(f));
-#endif
r.replace(pattern, "<u><b>\\1</b></u>");
return r;
}
diff --git a/src/frontends/qt/Validator.cpp b/src/frontends/qt/Validator.cpp
index 8ad1831..9e8d8d0 100644
--- a/src/frontends/qt/Validator.cpp
+++ b/src/frontends/qt/Validator.cpp
@@ -192,11 +192,7 @@ NoNewLineValidator::NoNewLineValidator(QWidget * parent)
QValidator::State NoNewLineValidator::validate(QString & qtext, int &) const
{
-#if QT_VERSION < 0x060000
- qtext.remove(QRegExp("[\\n\\r]"));
-#else
qtext.remove(QRegularExpression("[\\n\\r]"));
-#endif
return QValidator::Acceptable;
}
diff --git a/src/support/qstring_helpers.cpp b/src/support/qstring_helpers.cpp
index fadca76..e39dc7f 100644
--- a/src/support/qstring_helpers.cpp
+++ b/src/support/qstring_helpers.cpp
@@ -18,7 +18,7 @@
#include "support/docstring.h"
#include "support/qstring_helpers.h"
-#include <QRegExp>
+#include <QRegularExpression>
#include <QLocale>
#include <QString>
#include <QVector>
@@ -83,9 +83,10 @@ QString charFilterRegExp(QString const & filter)
QString re = ".*";
for (QChar const & c : filter) {
if (c.isLower())
- re += "["+ QRegExp::escape(c) + QRegExp::escape(c.toUpper()) + "]";
+ re += "[" + QRegularExpression::escape(c)
+ + QRegularExpression::escape(c.toUpper()) + "]";
else
- re += QRegExp::escape(c);
+ re += QRegularExpression::escape(c);
}
return re;
}
@@ -95,9 +96,10 @@ QString charFilterRegExpC(QString const & filter)
QString re = "(";
for (QChar const & c : filter) {
if (c.isLower())
- re += "["+ QRegExp::escape(c) + QRegExp::escape(c.toUpper()) + "]";
+ re += "[" + QRegularExpression::escape(c)
+ + QRegularExpression::escape(c.toUpper()) + "]";
else
- re += QRegExp::escape(c);
+ re += QRegularExpression::escape(c);
}
return re + ")";
}
More information about the lyx-cvs
mailing list