QStringMatcher Class
QStringMatcher クラスは、Unicode 文字列内で高速に照合できる文字のシーケンスを保持します。詳細...
| ヘッダー: | #include <QStringMatcher> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
- 継承されたメンバーを含む、すべてのメンバーの一覧
- QStringMatcherは、文字列データ用のクラス群の一部です。
パブリック関数
| QStringMatcher() | |
| QStringMatcher(QStringView pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive) | |
| QStringMatcher(const QString &pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive) | |
| QStringMatcher(const QChar *uc, qsizetype length, Qt::CaseSensitivity cs = Qt::CaseSensitive) | |
| QStringMatcher(const QStringMatcher &other) | |
| ~QStringMatcher() | |
| Qt::CaseSensitivity | caseSensitivity() const |
| qsizetype | indexIn(QStringView str, qsizetype from = 0) const |
| qsizetype | indexIn(const QString &str, qsizetype from = 0) const |
| qsizetype | indexIn(const QChar *str, qsizetype length, qsizetype from = 0) const |
| QString | pattern() const |
(since 6.7) QStringView | patternView() const |
| void | setCaseSensitivity(Qt::CaseSensitivity cs) |
| void | setPattern(const QString &pattern) |
| QStringMatcher & | operator=(const QStringMatcher &other) |
詳細な説明
このクラスは、一連のQCharを(ループなどで)特定の文字列に対して繰り返し照合したい場合や、同じ文字列内で同じ文字列を複数回検索したい場合に役立ちます。繰り返し照合を行う場合、マッチャーオブジェクトとindexIn()を使用する方が、単純なQString をQString::indexOf()で照合するよりも高速です。 単発の文字列マッチングを行う場合、このクラスにはメリットはありません。
検索対象のQString を指定して、QStringMatcherを作成します。その後、検索対象のQString に対してindexIn()を呼び出します。
QString 、QByteArrayMatcher 、およびQRegularExpressionも参照してください 。
メンバ関数のドキュメント
[constexpr noexcept default] QStringMatcher::QStringMatcher()
何にも一致しない空の文字列マッチャーを構築します。setPattern() を呼び出して、一致させるパターンを指定してください。
QStringMatcher::QStringMatcher(QStringView pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive)
pattern を検索する文字列マッチャーを構築します。大文字と小文字を区別する設定はcs です。
検索を実行するには、indexIn() を呼び出します。
[explicit] QStringMatcher::QStringMatcher(const QString &pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive)
pattern を検索する文字列マッチャーを構築します。大文字と小文字を区別する設定はcs です。
検索を実行するには、indexIn() を呼び出します。
QStringMatcher::QStringMatcher(const QChar *uc, qsizetype length, Qt::CaseSensitivity cs = Qt::CaseSensitive)
uc で指定されたパターンを、指定されたlength およびcs で指定された大文字小文字の区別設定に従って検索する文字列マッチャーを構築します。
QStringMatcher::QStringMatcher(const QStringMatcher &other)
other の文字列マッチャーを、この文字列マッチャーにコピーします。
[noexcept] QStringMatcher::~QStringMatcher()
文字列マッチング機能を破棄します。
Qt::CaseSensitivity QStringMatcher::caseSensitivity() const
この文字列マッチング機能の大文字小文字の区別設定を返します。
setCaseSensitivity()も参照してください 。
qsizetype QStringMatcher::indexIn(QStringView str, qsizetype from = 0) const
文字位置from (デフォルトは0、つまり最初の文字から)から、文字列str を検索し、コンストラクタまたは直近のsetPattern()の呼び出しで設定された文字列pattern()と一致する箇所を探します。pattern()がstr 内で一致した位置を返します。一致する箇所が見つからなかった場合は-1を返します。
setPattern() およびsetCaseSensitivity()も参照してください 。
qsizetype QStringMatcher::indexIn(const QString &str, qsizetype from = 0) const
文字位置from (デフォルトは0、つまり最初の文字から)から、文字列str を検索し、コンストラクタまたは直近のsetPattern()の呼び出しで設定された文字列pattern()を探します。pattern()がstr 内で一致した位置を返します。一致が見つからなかった場合は-1を返します。
setPattern() およびsetCaseSensitivity()も参照してください 。
qsizetype QStringMatcher::indexIn(const QChar *str, qsizetype length, qsizetype from = 0) const
str から始まる文字列(長さlength )について、文字位置from (デフォルトは 0、つまり最初の文字から)から、コンストラクタまたは直近のsetPattern() の呼び出しで設定された文字列pattern() を検索します。pattern() がstr 内で一致した位置を返します。一致が見つからなかった場合は -1 を返します。
setPattern() およびsetCaseSensitivity()も参照してください 。
QString QStringMatcher::pattern() const
この文字列マッチャーが検索対象とする文字列パターンを返します。
setPattern()も参照してください 。
[noexcept, since 6.7] QStringView QStringMatcher::patternView() const
この文字列マッチング関数が検索対象とするパターンの文字列ビューを返します。
この関数は Qt 6.7 で導入されました。
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 という文字列マッチャーを割り当てます。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.