#include <boost/xpressive/xpressive_dynamic.hpp> using namespace std; using namespace boost::xpressive; //正则表达式 cregex reg = cregex::compile("\\d+",icase); assert(regex_match("12",reg)); boost::xpressive::cmatch what; regex_search("1a2,3f",what,reg); assert(what.size()); cout<<what[0]<<endl; cout<<what[1]<<endl;
//字符串分割
#include <boost/assign/std/vector.hpp>
#include <boost/algorithm/string.hpp>
int _tmain(int argc, _TCHAR* argv[])
{
string strTemp = "A B C D E1 F1";
std::vector<string> d;
boost::algorithm::split(d,strTemp,boost::algorithm::is_any_of(" "),boost::algorithm::token_compress_on); //默认参数是 boost::token_compress_off (srTemp 分隔后就是 A B 空 C E1 F1 )
getchar();
return 0;
}
//boost 格式化字符串
方式一 :
cout << boost::format("%s") % "输出内容" << endl;
方式二 :
std::string s; s = str( boost::format("%s") % "输出内容" );
cout << s << endl;
方式三 :
boost::format formater("%s"); formater % "输出内容";
std::string s = formater.str(); cout << s << endl;
方式四 :
cout << boost::format("%1%") % boost::io::group(hex, showbase, 40) << endl