如何转换数字和字符
stringstream
支持数字和字符之间的转换。输入数据在缓存区,自动调整大小。
头文件:
sstream
用法:
std::stringsteam num_str;
int num = 0;
float fnum = 0;
num_str <<"1024";
num_str >>num;
num_str.clear();
num_str <<"10.24";
num_str >>fnum;
num_str<<1024;
std::string tmp = num_str.str();
参考地址:
C++中的正则表达式
1.解析日期
//regex 对应单字节
std::wstring datestr = L"2017-6-30 22:08:23";
std::wregex patt(L"([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})");
std::wsregex_iterator it(datestr .begin(),datestr .end(),patt),eos;
if(it != eos)
{
std::wstring tmp_ss;
tmp_ss = (*it)[1]; //注意是从 下标 1 开始的。 年
y = _wtoi(tmp_ss.c_str());
tmp_ss = (*it)[2]; //月
m = _wtoi(tmp_ss.c_str());
tmp_ss = (*it)[3];//日
d = _wtoi(tmp_ss.c_str());
tmp_ss = (*it)[4];//时
h = _wtoi(tmp_ss.c_str());
tmp_ss = (*it)[5];//分
mm = _wtoi(tmp_ss.c_str());
tmp_ss = (*it)[6];//秒
s = _wtoi(tmp_ss.c_str());
}