名前空間
変種
操作

std::match_results::ready

提供: cppreference.com
< cpp‎ | regex‎ | match results
 
 
正規表現ライブラリ
クラス
(C++11)
アルゴリズム
イテレータ
例外
特性
定数
(C++11)
正規表現の文法
 
 
bool ready() const;
(C++11およびそれ以降)

マッチ結果が準備完了 (有効) かそうでないかを示します。

デフォルト構築されたマッチ結果は結果の状態を持っていません (準備完了ではありません)。 正規表現アルゴリズムによってのみ利用可能になります。 準備完了状態は、すべてのマッチ結果が完全に確立されていることを暗黙に表します。

準備完了でない match_results オブジェクトに対するほとんどのメンバ関数の呼び出しの結果は未定義です。

[編集] 戻り値

マッチ結果が準備完了であれば true、そうでなければ false

[編集]

#include <iostream>
#include <regex>
#include <string>
 
int main()
{
    std::string target("pattern");
    std::smatch sm;
    std::cout << "default constructed smatch is "
              << (sm.ready() ? " ready\n" : " not ready\n");
 
    std::regex re1("tte");
    std::regex_search(target, sm, re1);
 
    std::cout << "after search, smatch is "
              << (sm.ready() ? " ready\n" : " not ready\n");
}

出力:

default constructed smatch is  not ready
after search, smatch is  ready