有没有人知道为什么以下代码会输出“不匹配”?
boost::regex r(".*\\.");
std::string s("app.test");
if (boost::regex_match(s, r))
std::cout << "match" << std::endl;
else
std::cout << "no match" << std::endl;
答案 0 :(得分:4)
我相信 regex_match()会匹配整个字符串。请尝试 regex_search()。
它可以使用以下正则表达式:
boost::regex r(".*\\..*");
和 regex_match()功能。但同样, regex_search()正是您可能正在寻找的。 p>