2

有谁知道为什么以下代码会输出“不匹配”?

  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;
4

1 回答 1

4

我相信regex_match()匹配整个字符串。尝试regex_search()代替。

它可以使用以下正则表达式:

boost::regex r(".*\\..*");

regex_match()函数。但同样,regex_search()是您可能正在寻找的。

于 2009-10-08T15:01:42.180 回答