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