std::match_results<BidirIt,Alloc>::ready
来自 cppreference.com
< cpp | regex | match results
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