PySide6.QtCore.QByteArrayMatcher

class QByteArrayMatcher

QByteArrayMatcher 类持有一个字节序列,可以在字节数组中快速匹配。更多

概要

方法

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

当您有一系列字节想要重复匹配某些字节数组(可能在循环中),或者当您想在同一个字节数组中多次搜索相同的字节序列时,此类非常有用。如果重复匹配发生,使用匹配器对象和indexIn()比使用indexOf()匹配普通的QByteArray更快。如果您正在进行一次性字节数组匹配,此类没有优势。

使用你想要搜索的QByteArray创建QByteArrayMatcher。然后在你想要搜索的QByteArray上调用indexIn()

另请参阅

QByteArray QStringMatcher

__init__()

构造一个空的字节数组匹配器,它不会匹配任何内容。调用setPattern()来给它一个匹配的模式。

__init__(pattern)
Parameters:

patternQByteArrayView

这是一个重载函数。

构建一个字节数组匹配器,用于搜索pattern。调用indexIn()来执行搜索。

注意

当使用此对象时,pattern 所引用的数据必须保持有效。

__init__(pattern)
Parameters:

模式QByteArray

构建一个字节数组匹配器,它将搜索pattern。调用indexIn()来执行搜索。

__init__(other)
Parameters:

其他QByteArrayMatcher

other字节数组匹配器复制到此字节数组匹配器。

__init__(pattern[, length=-1])
Parameters:
  • pattern – str

  • length – int

pattern构造一个字节数组匹配器。pattern具有给定的length。调用indexIn()来执行搜索。

注意

当使用此对象时,pattern 所引用的数据必须保持有效。

indexIn(data[, from=0])
Parameters:
  • dataQByteArrayView

  • from – 整数

Return type:

整数

这是一个重载函数。

在字节数组 data 中,从字节位置 from(默认为0,即从第一个字节开始)搜索在构造函数或最近一次调用 setPattern() 时设置的字节数组 pattern()。返回 pattern()data 中匹配的位置,如果未找到匹配项,则返回-1。

indexIn(str, len[, from=0])
Parameters:
  • str – str

  • len – int

  • from – 整数

Return type:

整数

搜索字符字符串 str,其长度为 len,从字节位置 from(默认为0,即从第一个字节开始),查找在构造函数或最近一次调用 setPattern() 中设置的字节数组 pattern()。返回 pattern()str 中匹配的位置,如果未找到匹配项,则返回-1。

pattern()
Return type:

QByteArray

返回此字节数组匹配器将搜索的字节数组模式。

另请参阅

setPattern()

setPattern(pattern)
Parameters:

模式QByteArray

将此字节数组匹配器将搜索的字节数组设置为pattern

另请参阅

pattern() indexIn()