什么是C ++全局正则表达式?

时间:2018-01-03 20:57:50

标签: c++ regex

在C ++中,我试图匹配这个字符串。 " CREATE = NO \ nBOB = HI"在=符号后抓取内容,它不会抓取字符。当我运行我的程序时,它只会抓取第一个匹配的NO。

  

匹配[0] = CREATE = NO

     
    

匹配[1] =否

  

但是为了抓住BOB = HI,它甚至不匹配它。这是我的代码。

int main() {
std::string parse = "CREATE=NO\nBOB=HI";
std::cout << parse << std::endl;
std::string regexp = "\\w+=(\\w+)";
std::smatch matches;
std::regex regex(regexp);
std::regex_search(parse, matches, regex);
std::cout << "The size is " << matches.size() << std::endl;
for (unsigned int i = 0; i < matches.size(); i++) {
    std::cout << "Matches " << i << ": " << matches[i] << std::endl;
}
std::cin.get();

}

  

我试图做的是获得NO和HI,但它只获得NO

0 个答案:

没有答案