Класс QStringMatcher
Класс QStringMatcher хранит последовательность символов, которые могут быть быстро сопоставлены в строке Юникода. Подробнее...
| Заголовок: | #include <QStringMatcher> |
| qmake: | QT += core |
Открытые функции
| QStringMatcher(const QStringMatcher &other) | |
| QStringMatcher(const QChar *uc, int length, Qt::CaseSensitivity cs = Qt::CaseSensitive) | |
| QStringMatcher(const QString &pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive) | |
| QStringMatcher() | |
| QStringMatcher & | operator=(const QStringMatcher &other) |
| ~QStringMatcher() | |
| Qt::CaseSensitivity | caseSensitivity() const |
| int | indexIn(const QString &str, int from = 0) const |
| int | indexIn(const QChar *str, int length, int from = 0) const |
| QString | pattern() const |
| void | setCaseSensitivity(Qt::CaseSensitivity cs) |
| void | setPattern(const QString &pattern) |
Подробное описание
Этот класс полезен, когда у вас есть последовательность QChar, которую вы хотите многократно сопоставлять с некоторыми строками (например, в цикле), или когда вы хотите найти ту же последовательность символов несколько раз в одной строке. Использование объекта согласования и indexIn() быстрее, чем сопоставление обычной QString с QString::indexOf(), если повторяется сопоставление. Этот класс не предлагает никаких преимуществ, если вы выполняете однократные сопоставления строк.
Создайте QStringMatcher с QString, которую вы хотите найти. Затем вызовите indexIn() для QString, которую вы хотите найти.
См. также QString, QByteArrayMatcher и QRegExp.
Документация по функциям-членам
QStringMatcher::QStringMatcher(const QStringMatcher &other)
Копирует строковый согласователь other в этот строковый согласователь.
QStringMatcher::QStringMatcher(const QChar *uc, int length, Qt::CaseSensitivity cs = Qt::CaseSensitive)
Конструирует строковый согласователь, который будет искать шаблон, указанный в uc с заданной length и чувствительностью к регистру, заданной в cs.
Эта функция была добавлена в Qt 4.5.
QStringMatcher::QStringMatcher(const QString &pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive)
Конструирует строковый согласователь, который будет искать pattern, с чувствительностью к регистру cs.
Вызовите indexIn(), чтобы выполнить поиск.
QStringMatcher::QStringMatcher()
Конструирует пустой строковый согласователь, который ничего не будет сопоставлять. Вызовите setPattern(), чтобы задать шаблон для сопоставления.
QStringMatcher &QStringMatcher::operator=(const QStringMatcher &other)
Присваивает строковый согласователь other этому строковому согласователю.
QStringMatcher::~QStringMatcher()
Удаляет строковый согласователь.
Qt::CaseSensitivity QStringMatcher::caseSensitivity() const
Возвращает значение чувствительности к регистру для этого строкового согласователя.
См. также setCaseSensitivity().
int QStringMatcher::indexIn(const QString &str, int from = 0) const
Ищет строку str с позиции from (по умолчанию 0, т.е. с первого символа) строку pattern(), которая была установлена в конструкторе или в последнем вызове setPattern(). Возвращает позицию, где pattern() совпала в str, или -1, если совпадения не найдено.
См. также setPattern() и setCaseSensitivity().
int QStringMatcher::indexIn(const QChar *str, int length, int from = 0) const
Ищет строку, начинающуюся с str (длины length) с позиции from (по умолчанию 0, т.е. с первого символа), для строки pattern(), которая была установлена в конструкторе или в последнем вызове setPattern(). Возвращает позицию, где pattern() совпала в str, или -1, если совпадения не найдено.
Эта функция была добавлена в Qt 4.5.
См. также setPattern() и setCaseSensitivity().
QString QStringMatcher::pattern() const
Возвращает строковый шаблон, который этот строковый согласователь будет искать.
См. также setPattern().
void QStringMatcher::setCaseSensitivity(Qt::CaseSensitivity cs)
Устанавливает чувствительность к регистру этого строкового согласователя в cs.
См. также caseSensitivity(), setPattern() и indexIn().
void QStringMatcher::setPattern(const QString &pattern)
Устанавливает строку, которую этот строковый согласователь будет искать, в pattern.
См. также pattern(), setCaseSensitivity() и indexIn().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qstringmatcher.html