我正在尝试使用此正则表达式从wegpage中提取链接:
std::regex e("<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>(.*)<\/a>");
但遗憾的是我的程序以what<>: regex_error
退出。
有没有使用第三方库的方法,还是我必须在这里使用 boost 之类的东西?
更新: 我在我的正则表达式代码中编辑,这几乎取自cplusplus.com
的正则表达式示例std::regex e("<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>(.*)<\/a>");
std::smatch m;
std::cout << "The following links were found:" << std::endl;
std::string s = getCodeFromSite("cplusplus.com"); //provides me with the hmtl code as a string
while (std::regex_search (s,m,e)) {
for (auto x:m) std::cout << x << " ";
std::cout << std::endl;
s = m.suffix().str();
}