VC6 0下使用boost的正規表示式庫進行搜尋

2021-06-06 10:54:16 字數 994 閱讀 4697

第一步當然是安裝,編譯boost,.

開啟vc6.0選擇「tools->options->directories->include files,加入一行"d:/boost",選擇library file"加入一行d:/program files/microsoft visual studio/vc98/boostrex(我的vc裝在d盤).經過這樣的設定後就可以正確使用boost的正規表示式庫了.

第二步是寫個小例項來測試下,我是建的mfc的對話方塊程式來試的,

加入標頭檔案

#include

在對話方塊視窗上建乙個按鈕,寫下於下**

boost::regex expression("select ([a-za-z]*) from ([a-za-z]*)");

cstring in = "select gm from tab select name from table";

cstring sret;

boost::cmatch what;

if(boost::regex_search(lpcstr(in), what, expression))//cstring轉string

{ for(int i=0;i

測試正常,再進行乙個搜尋重複文字的測試,加入標頭檔案:

#include

**如下:

boost::regex reg("(.+?)b(.+?)");

std::string s="123bccc

456b789";

boost::smatch what;

std::string::const_iterator start = s.begin();

std::string::const_iterator end = s.end();

cstring sret;

while( boost::regex_search(start, end, what, reg) )

{ for(int i=0;i

測試正常.

VC6 0下編譯boost庫的regex

今天要用到正規表示式,用網上的方法,直接使用命令 nmake vc6.mak 提示 nmake 不是內部或外部命令,也不是可執行的程式 上網搜尋了一下,說執行命令 call c program files microsoft visual studio vc98 bin vcvars32.bat 重...

VC6 0下配置boost庫使用正規表示式

最近做開發碰到了長字串匹配 搜尋的問題,最先想到的是使用正規表示式,簡單 高效。但是我用的開發工具是vc6.0,不支援正規表示式。上網baidu一下,發現支援正則的庫還真不少,大概有以下幾種 boost,gnu,vc7帶的atl中的和微軟發布的greta。網上的朋友對boost評價不錯,決定就使用是...

VC6 0下配置boost庫使用正規表示式

最近做開發碰到了長字串匹配 搜尋的問題,最先想到的是使用正規表示式,簡單 高效。但是我用的開發工具是vc6.0,不支援正規表示式。上網baidu一下,發現支援正則的庫還真不少,大概有以下幾種 boost,gnu,vc7帶的atl中的和微軟發布的greta。網上的朋友對boost評價不錯,決定就使用是...