C++04:使用Boost-小试Regex库一、编写代码
下面代码实现的功能:找出html文件中的所有链接
/* * regex_test.cpp * */ #include <iostream> #include <fstream> #include <string> #include <boost/regex.hpp> using namespace std; int main(int argc, char* argv[]) { if (argc != 2) { cerr << "usage: " << argv[0] << " <input_file>" << '\n'; return 1; } ifstream fin(argv[1]); if (!fin) { cerr << "open file " << argv[1] << " failed." << '\n'; return 1; } string content; char c; while (fin >> c) { content.push_back(c); } try { boost::regex re("href\\s*=\\s*\"([^\"]+)\"", boost::regex::icase); boost::sregex_token_iterator it(content.begin(), content.end(), re, 1, boost::match_default); boost::sregex_token_iterator end; while (it != end) cout << *it++ << endl; } catch (exception& e) { cerr << e.what() << '\n'; } }二、编译代码
$ g++ -o"regex_test" -g3 -Wall regex_test.cpp -lboost_regex
三、运行程序 regex_test$ ./regex_test
C++04:使用Boost-小试Regex库
免责声明:文章转载自《C++04:使用Boost-小试Regex库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
上篇Mysql Select 语句中实现的判断【跨域】SpringBoot跨域,拦截器中,第一次获取的请求头为NULL,发送两次请求的处理方式下篇
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=