Spec-Zone.ru › Qt 5.9

Класс QByteArrayMatcher

Класс QByteArrayMatcher хранит последовательность байтов, которую можно быстро сопоставить в массиве байтов. Подробнее...

Заголовок: #include <QByteArrayMatcher>
qmake: QT += core
  • Список всех членов, включая унаследованные

Открытые функции

QByteArrayMatcher()
QByteArrayMatcher(const QByteArray &pattern)
QByteArrayMatcher(const char *pattern, int length)
QByteArrayMatcher(const QByteArrayMatcher &other)
~QByteArrayMatcher()
int indexIn(const QByteArray &ba, int from = 0) const
int indexIn(const char *str, int len, int from = 0) const
QByteArray pattern() const
void setPattern(const QByteArray &pattern)
QByteArrayMatcher & operator=(const QByteArrayMatcher &other)

Подробное описание

Класс QByteArrayMatcher хранит последовательность байтов, которые можно быстро сопоставить в массиве байтов.

Этот класс полезен, когда у вас есть последовательность байтов, которую вы хотите многократно сопоставлять с некоторыми массивами байтов (например, в цикле), или когда вы хотите найти одну и ту же последовательность байтов несколько раз в одном массиве байтов. Использование объекта матчера и indexIn() быстрее, чем сопоставление простого QByteArray с QByteArray::indexOf(), если повторяющееся сопоставление происходит. Этот класс не предлагает преимуществ, если вы выполняете разовые сопоставления массивов байтов.

Создайте QByteArrayMatcher с QByteArray, которую вы хотите найти. Затем вызовите indexIn() на QByteArray, которую вы хотите найти.

См. также QByteArray и QStringMatcher.

Документация по членам-функциям

QByteArrayMatcher::QByteArrayMatcher()

Конструирует пустой матчер массивов байтов, который ничего не будет сопоставлять. Вызовите setPattern(), чтобы задать шаблон для сопоставления.

QByteArrayMatcher::QByteArrayMatcher(const QByteArray &pattern)

Конструирует матчер массивов байтов, который будет искать pattern. Вызовите indexIn(), чтобы выполнить поиск.

QByteArrayMatcher::QByteArrayMatcher(const char *pattern, int length)

Конструирует матчер массивов байтов из pattern. pattern имеет заданную длину length. pattern должен оставаться в области видимости, но деструктор не удаляет pattern.

QByteArrayMatcher::QByteArrayMatcher(const QByteArrayMatcher &other)

Копирует other матчер массивов байтов в этот матчер массивов байтов.

QByteArrayMatcher::~QByteArrayMatcher()

Удаляет матчер массивов байтов.

int QByteArrayMatcher::indexIn(const QByteArray &ba, int from = 0) const

Ищет в массиве байтов ba, начиная с байтовой позиции from (по умолчанию 0, т. е. с первого байта), массив байтов pattern(), который был задан в конструкторе или в последнем вызове setPattern(). Возвращает позицию, где pattern() совпал в ba, или -1, если совпадения не найдено.

int QByteArrayMatcher::indexIn(const char *str, int len, int from = 0) const

Ищет в строке символов str, имеющей длину len, начиная с байтовой позиции from (по умолчанию 0, т. е. с первого байта), массив байтов pattern(), который был задан в конструкторе или в последнем вызове setPattern(). Возвращает позицию, где pattern() совпал в str, или -1, если совпадения не найдено.

QByteArray QByteArrayMatcher::pattern() const

Возвращает массив байтов-шаблон, который этот матчер массивов байтов будет искать.

См. также setPattern().

void QByteArrayMatcher::setPattern(const QByteArray &pattern)

Устанавливает массив байтов, который этот матчер массивов байтов будет искать, в pattern.

См. также pattern() и indexIn().

QByteArrayMatcher &QByteArrayMatcher::operator=(const QByteArrayMatcher &other)

Присваивает other матчер массивов байтов этому матчеру массивов байтов.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qbytearraymatcher.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API