KateRegExpSearch

#include <kateregexpsearch.h>

Public Member Functions

 KateRegExpSearch (const KTextEditor::Document *document)
 
QVector< KTextEditor::Rangesearch (const QString &pattern, const KTextEditor::Range &inputRange, bool backwards=false, QRegularExpression::PatternOptions options=QRegularExpression::NoPatternOption)
 

Static Public Member Functions

static QString buildReplacement (const QString &text, const QStringList &capturedTexts, int replacementCounter)
 
static QString escapePlaintext (const QString &text)
 

Detailed Description

Object to help to search for regexp.

This should be NO QObject, it is created to often! I measured that, if you create it 20k times to replace for example " " in a document, that takes seconds on a modern machine!

Definition at line 28 of file kateregexpsearch.h.

Member Function Documentation

QString KateRegExpSearch::buildReplacement ( const QString text,
const QStringList capturedTexts,
int  replacementCounter 
)
static

Returns a modified version of text where.

  • escape sequences are resolved, e.g. "\\n" to "\n",
  • references are resolved, e.g. "\\1" to 1st entry in capturedTexts, and
  • counter sequences are resolved, e.g. "\\#...#" to replacementCounter.
Parameters
texttext containing escape sequences, references, and counter sequences
capturedTextslist of substitutes for references
replacementCountervalue for replacement counter
Returns
resolved text

Definition at line 479 of file kateregexpsearch.cpp.

QString KateRegExpSearch::escapePlaintext ( const QString text)
static

Returns a modified version of text where escape sequences are resolved, e.g.

"\\n" to "\n".

Parameters
texttext containing escape sequences
Returns
text with resolved escape sequences

Definition at line 474 of file kateregexpsearch.cpp.

QVector< KTextEditor::Range > KateRegExpSearch::search ( const QString pattern,
const KTextEditor::Range inputRange,
bool  backwards = false,
QRegularExpression::PatternOptions  options = QRegularExpression::NoPatternOption 
)

Search for the regular expression pattern inside the range inputRange.

If backwards is true, the search direction will be reversed. options is a set of QRegularExpression::PatternOptions OR flags that control certain aspects of the search, e.g. case sensitivity and if the dot "." metacharacter matches any character including a newline.

Parameters
patterntext to search for
inputRangeRange to search in
backwardsif true, the search will be backwards
optionsQRegularExpression pattern options
Returns
Vector of ranges, one for each capture group. The first range (index zero) spans the whole match. If no matches are found, the vector will contain one element, an invalid range (see Range::isValid()).
See also
KTextEditor::Range, QRegularExpression

Definition at line 173 of file kateregexpsearch.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Thu Nov 26 2020 22:56:15 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.