问一个C++ 的正则表达式问题
头文件
#ifdef WIN32#include <regex>#else#include <boost/regex.hpp>using namespace boost;#endif
int get_regex_lines(string& str, regex & reg, vector<string>& vline){ sregex_iterator end; sregex_iterator iter_flight(str.begin(), str.end(), reg); for(;iter_flight != end;++iter_flight) { for(int i=1;i<(*iter_flight).size();i++) { vline.push_back((*iter_flight)[i].str()); } } return vline.size();}int get_regex_lines(string& str, regex & reg, vector<string>& vline, vector<int> &vecpos){ sregex_iterator end; sregex_iterator iter_flight(str.begin(), str.end(), reg); for(;iter_flight != end;++iter_flight) { for(int i=1;i<(*iter_flight).size();i++) { vline.push_back((*iter_flight)[i].str()); vecpos.push_back((*iter_flight).position(i)); } } return vline.size();}regex exp("[1]{1}\\d{10}",regex::icase); vector<string > vmobile; get_regex_lines(textstr, exp, vmobile)