本文主要是介绍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库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!