QLatin1StringMatcher 类

优化拉丁-1 文本中的子串搜索。 更多...

头文件 #include <QLatin1StringMatcher>
CMakefind_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmakeQT += core
自从Qt 6.5

公共函数

QLatin1StringMatcher()
QLatin1StringMatcher(QLatin1StringView pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive)
~QLatin1StringMatcher()
Qt::CaseSensitivitycaseSensitivity() const
qsizetypeindexIn(QLatin1StringView haystack, qsizetype from = 0) const
QLatin1StringViewpattern() const
voidsetCaseSensitivity(Qt::CaseSensitivity cs)
voidsetPattern(QLatin1StringView pattern)

详细说明

QLatin1StringMatcher 可以搜索一个 QLatin1StringView 作为另一个的子串,忽略大小写或考虑大小写。

当您有一个希望重复搜索的拉丁-1 编码字符串(可能在循环中),或者当您想要搜索给定 QLatin1StringView 中它的所有实例时,此类非常有用。如果发生重复匹配,使用匹配器对象和 indexIn() 比使用 QLatin1StringView::indexOf() 进行匹配更快。此类不提供任何好处,如果您只进行一次匹配。在匹配器对象销毁之前,要搜索的字符串不得被破坏或更改,因为匹配器在搜索时会访问该字符串。

为要搜索的 QLatin1StringView 和大小写敏感度创建一个 QLatin1StringMatcher。然后,使用要搜索的 QLatin1StringView 调用 indexIn()。

另请参阅 QLatin1StringViewQStringMatcherQByteArrayMatcher

成员函数文档

[noexcept] QLatin1StringMatcher::QLatin1StringMatcher()

构建一个空的拉丁-1 字符串匹配器。这将在任何字符串中的每个位置进行匹配。

另请参阅 setPattern()、setCaseSensitivity() 和 indexIn().

[显式 no-exception] QLatin1StringMatcher::QLatin1StringMatcher(QLatin1StringView pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive)

构造一个用于搜索给定 pattern 的 Latin-1 字符串匹配器,其大小写敏感度为 cs。在匹配器对象之前,必须保证 pattern 参数不会被销毁。调用 indexIn() 以在给定的 QLatin1StringView 中查找 pattern

[no-exception] QLatin1StringMatcher::~QLatin1StringMatcher()

销毁 Latin-1 字符串匹配器。

[no-exception] Qt::CaseSensitivity QLatin1StringMatcher::caseSensitivity() const

返回匹配器使用的字体敏感性。

另请参阅 setCaseSensitivity() 和 indexIn().

[no-exception] qsizetype QLatin1StringMatcher::indexIn(QLatin1StringView haystack, qsizetype from = 0) const

from 开始在给定的 haystack 中搜索模式。

另请参阅 caseSensitivity() 和 pattern().

[no-exception] QLatin1StringView QLatin1StringMatcher::pattern() const

返回匹配器搜索的 Latin-1 模式。

另请参阅 setPattern() 和 indexIn().

[no-exception] void ŁQA1StringMatcher::setCaseSensitivity(Qt::CaseSensitivity cs)

将字体敏感性设置为 cs

另请参阅 caseSensitivity() 和 indexIn().

[no-exception] void ŁQA1StringMatcher::setPattern(QLatin1StringView pattern)

将搜索模式设置为 pattern。指向 QLatin1StringView 的字符串必须在匹配器销毁之前不允许被销毁,除非它被设置为指向具有较长生命周期的其他 pattern

另请参阅 pattern() 和 indexIn().

© 2024 Qt 公司有限。此处包含的文档贡献的版权属于其各自的所有者。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 和相应的标志是芬兰和/或世界上其他国家的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。