点击这里给我发消息 点击这里给我发消息

VC使用boost库解析正则表达式方法

添加时间:2013-12-7
    相关阅读: 程序 VC
   boost库安装比较麻烦,需要自己编译源文件,我整理了一下,如果仅仅需要做正则表达式,按下面的代码敲就行了:

  cmd
  vcvars32.bat
  cd D:\\boost_1_32_0\\libs\\regex\\build
  d:
  nmake -fvc6.mak
  nmake -fvc6.mak install 

    注意,别看下载下来的数据包没有多大,解压缩之后达到了100多M,编译完之后为109M,占用131M,所以安装时一定注意空出足够的空间,敲入nmake -fvc6.mak后等待的时间比较长,屏幕上还会出现一大堆英语,可以不做考虑.按照步骤往下敲就行了.压缩包内文档很详细,参照文档继续就可以了.

  在VC6中集成:Tools->Options->Directories->Include files

  加入:D:\\boost_1_32_0

  编写一个源程序测试一下:

#include \"stdafx.h\"
#include <cstdlib>
#include <stdlib.h>
#include <boost/regex.hpp>
#include <string>
#include <iostream>

using namespace std;
using namespace boost;

regex expression(\"^select ([a-zA-Z]*) from ([a-zA-Z]*)\");

int main(int argc, char* argv[])
{
 std::string in;
 cmatch what;
 cout << \"enter test string\" << endl;
 getline(cin,in);
 if(regex_match(in.c_str(), what, expression))
 {
  for(int i=0;i<what.size();i++)
   cout<<\"str :\"<<what[i].str()<<endl;
 }
 else
 {
  cout<<\"Error Input\"<<endl;
 }
 return 0;
}

  输入: select name from table
  输出: str:select name from table
     str:name
     str:table 
相关VC使用boost库解析正则表达式方法

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册