QByteArrayMatcher 类保持在字节数组中可以快速匹配的字节序列。 更多...
头: | #include <QByteArrayMatcher> |
CMake: |
find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
QByteArrayMatcher () | |
QByteArrayMatcher (const QByteArray & pattern ) | |
(since 6.3)
|
QByteArrayMatcher (QByteArrayView pattern ) |
QByteArrayMatcher (const char * pattern , qsizetype length = -1) | |
QByteArrayMatcher (const QByteArrayMatcher & other ) | |
~QByteArrayMatcher () | |
qsizetype | indexIn (const char * str , qsizetype len , qsizetype from = 0) const |
(since 6.3)
qsizetype
|
indexIn (QByteArrayView data , qsizetype from = 0) const |
QByteArray | pattern () const |
void | setPattern (const QByteArray & pattern ) |
QByteArrayMatcher & | operator= (const QByteArrayMatcher & other ) |
This class is useful when you have a sequence of bytes that you want to repeatedly match against some byte arrays (perhaps in a loop), or when you want to search for the same sequence of bytes multiple times in the same byte array. Using a matcher object and indexIn () is faster than matching a plain QByteArray with QByteArray::indexOf () if repeated matching takes place. This class offers no benefit if you are doing one-off byte array matches.
Create the QByteArrayMatcher with the QByteArray you want to search for. Then call indexIn () on the QByteArray that you want to search.
另请参阅 QByteArray and QStringMatcher .
Constructs an empty byte array matcher that won't match anything. Call setPattern () to give it a pattern to match.
[explicit]
QByteArrayMatcher::
QByteArrayMatcher
(const
QByteArray
&
pattern
)
Constructs a byte array matcher that will search for pattern 。调用 indexIn () to perform a search.
[explicit, since 6.3]
QByteArrayMatcher::
QByteArrayMatcher
(
QByteArrayView
pattern
)
这是重载函数。
Constructs a byte array matcher that will search for pattern 。调用 indexIn () to perform a search.
注意: the data that pattern is referencing must remain valid while this object is used.
该函数在 Qt 6.3 引入。
[explicit]
QByteArrayMatcher::
QByteArrayMatcher
(const
char
*
pattern
,
qsizetype
length
= -1)
Constructs a byte array matcher from pattern . pattern has the given length 。调用 indexIn () to perform a search.
注意: the data that pattern is referencing must remain valid while this object is used.
拷贝 other byte array matcher to this byte array matcher.
[noexcept]
QByteArrayMatcher::
~QByteArrayMatcher
()
Destroys the byte array matcher.
Searches the char string str , which has length len , from byte position from (default 0, i.e. from the first byte), for the byte array pattern () that was set in the constructor or in the most recent call to setPattern (). Returns the position where the pattern () matched in str , or -1 if no match was found.
[since 6.3]
qsizetype
QByteArrayMatcher::
indexIn
(
QByteArrayView
data
,
qsizetype
from
= 0) const
这是重载函数。
Searches the byte array data , from byte position from (default 0, i.e. from the first byte), for the byte array pattern () that was set in the constructor or in the most recent call to setPattern (). Returns the position where the pattern () matched in data , or -1 if no match was found.
该函数在 Qt 6.3 引入。
Returns the byte array pattern that this byte array matcher will search for.
另请参阅 setPattern ().
Sets the byte array that this byte array matcher will search for to pattern .
赋值 other byte array matcher to this byte array matcher.