易截截图软件、单文件、免安装、纯绿色、仅160KB

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


相关文档:

Tips: linux shell重定向

Linux POSIX Shell 环境中支持输入输出重定向,用符号"<"和">"来表示。命令形式可以用%>file或者%<content来表示(其中%表示文件描述符:0为标准输入stdin,1为标准输出stdout、2为标准错误stderr).系统默认%值是1,也就是1>,可以简写为>,也就是说默认为1>。stdout的默认输出到终端,stderr的默认输 ......

OpenGL + C++ + Java


OpenGL + C++ + Java
这个组合有一点奇怪,因为要实现在
opengl
中播放视频,所以不得不有这样奇怪的组合。上层的
MediaPlayer
封装的基本上是针对
android UI
的框架,如果想在
opengl
中显示,估计难度很大。另外,很多开源的
opengl
的游戏基本上都是
C++
编写,所以这个体系的作用还是很大的,之所以需 ......

C\C++ byte或者char数组转int值

假设有char a[2];
如要把a转换为int值。应是如下写法int b=*(int *)a;
即,先把指针a 转换为一个int指针,然后再此基础上取值。
但是另一种写法 int b=(int)(*a);是不对的,*a 取a的内存单元内容,因为现在a是char指针,所以只会取a[1]中内容,最大为255. 这里要说明的是,在把char或byte数组转换为其他类型的值时,要先 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号