C++ 之Boost学习笔记 Linux下编程
C++学习笔记--Linux下编程
一、关于Boost的使用,几种常用方法,只是自己工作、学习中总结的,有些方法的确有些繁琐,能满足需求,应该还有更加简单快捷的方式,待改进。
1、判断字符串与正则表达式是否匹配(完全匹配)
bool IsMatch(const char* data,const char * regx)
{
boost::regex expression(regx);
string str(data);
if(boost::regex_match(str, expression))
{
return true;
}
return false;
}
2.1、按某一字符串进行分割操作,并存储到vector中。
void split1(const char* data,boost::regex expression,vector<string> &dataVector)
{
string str1(data);//将char *转化为string类型
boost::sregex_token_iterator p(str1.begin( ), str1.end( ), expression, -1);
boost::sregex_token_iterator end;
const char *start=NULL,*endp;
while (p != end)
{
string str = *p;
printf("string:[%s]\n",str.c_str());
if ( str.compare("") != NULL )
{
dataVector.push_back(str);
}
p++;
}
}
2.2、按某一字符串进行分割操作,并存储到vector中,并保留分割符中的几位。
void split2(const char* data,boost::regex expression,vector<string> &dataVector,int length)
{
if ( length < 0 )
{
return ;
}
string str1(data);//将char *转化为string类型
boost::sregex_token_iterator p(str1.begin( ), str1.end( ), expression, -1);
boos
相关文档:
总览
用iptables -ADC 来指定链的规
则
,-A添加 -D删除 -C 修改
iptables - [RI] chain rule num rule-specification[option]
用iptables - RI 通过规则的顺序指定
iptables -D chain rule num[option]
删除指定规则
iptables -[LFZ] [chain][option]
用iptables -LFZ 链名 [选项]
iptables -[NX] chain
用 -NX ......
2009 年 4 月 23 日
本文中我们针对 Linux 上多线程编程的主要特性总结出 5 条经验,用以改善 Linux 多线程编程的习惯和避免其中的开发陷阱。在本文中,我们穿插一些 Windows 的编程用例用以对比 Linux 特性,以加深读者印象。
背景
Linux 平台上的多线程程序开发相对应其他平台(比如 Windows)的多线程 API 有一些细微 ......
腾讯科技讯(洛洛河) 5月20日消息,红帽(Red Hat)宣布已在国内启动大学生Linux技能大赛;并将通过初赛、复赛、决赛层层选拔,于7月17日决出获胜者。
红帽中国市场部总监董辛乙表示,国内Linux市场人才缺口很大,已经影响到了很多Linux项目的正常进行,希望通过这些举措增加大学生对Linux的兴趣,从而培养更多人才。
填 ......
GCC
目前,GCC(GNU Compiler Collection)是社区最好的编译器。GCC也就是以前的GNU C编译器(GNU C Compiler),是由egcs筹划指导委员会维护,他们的目标是让GCC成为标准的C编译器。1999年中,egcs和GCC工程合并为一个编辑器套装,同年10月发布GCC 2.95.2。
GCC是一个编 ......