在VC6中安装BOOST的正则表达式库
大部分是参考的yysdsyl的文章<VC6.0下配置boost库使用正则表达式>同时感谢遨游的QSlash
1.下载boost.1.34.1版本
2.解压到C盘boost目录
3.从CMD进入C:/boost/libs/regex/build目录
4.从VC6安装目录找VC98/Bin/VCVARS32.BAT文件并把这个文件拖到 第3步的CMD窗口 回车
5.在CMD中输入命令“nmake -fvc6.mak”
6.编译完成后在C:/boost/libs/regex/build多了一个vc6的文件夹,里面是很多lib和dll文件
7.把vc6下的所有lib和dll文件拷贝到Visual Studio安装目录下的VC98/boostRex(boostRex是自己建的)
8.打开vc6.0选择“Tools->Options->Directories->Include files,加入一行"C:/BOOST"
9.选择"Tools->Options->Directories->Library file"加入一行C:/PROGRAM FILES/MICROSOFT VISUAL STUDIO/VC98/BOOSTREX
10.在写BOOOST的程序的时候LINK的时候可能出现 LNK1104: cannot open file "libboost_regex-vc6-sgd-1_34_1.lib"之类的信息
解决方法是直接进入C:/PROGRAM FILES/MICROSOFT VISUAL STUDIO/VC98/BOOSTREX目录把相应的名称修改成需要的名称(感谢遨游的QSlash帮助)
下面是自己写的一个测试用的例子,结果会输出一个BLOG地址
#include <cstdlib> #include <stdlib.h> #include <boost/regex.hpp> #include <string> #include <iostream> #include <windows.h> using namespace std; using namespace boost; regex expression("http://[a-z/////.]+"); int main(int argc, char* argv[]) { char szBuf[]="这是我的网址http://blog.csdn.net/chinafe你可以访问一下哦"; cmatch what; if(regex_search(szBuf, what, expression)) { MessageBox(0,what.str().c_str(),0,0); } else { cout<<"Error Input"<<endl; } return 0; }