std::match_results<BidirIt,Alloc>::ready
From cppreference.com
< cpp | regex | match results
| bool ready() const; |
(C++11以降) | |
マッチ結果が準備完了(有効)であるか否かを示します。
デフォルト構築された match_results オブジェクトは、結果の状態を持たず(ready ではありません)、正規表現アルゴリズムによってのみ ready 状態にすることができます。ready 状態は、すべての一致結果が完全に確立されたことを意味します。
ready でない match_results オブジェクトのほとんどのメンバ関数を呼び出した結果は未定義です。
[編集] 戻り値
マッチ結果が ready であれば true、そうでなければ false。
[編集] 例
このコードを実行
#include <iostream> #include <regex> #include <string> int main() { std::string target("big-red-cat"); std::smatch sm; std::cout << "Default constructed smatch is " << (sm.ready() ? "ready.\n" : "not ready.\n"); std::regex re1(".*-red-.*"); 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.