1. 程式人生 > >Boost之正則表達式Regex庫的使用方法

Boost之正則表達式Regex庫的使用方法

Boost Regex庫

這個程序可以簡潔的挑出了目標字符串。

#include <cstdlib>   
#include <stdlib.h>   
#include <boost/regex.hpp>   
#include <stdlib.h>
#include <string>   
#include <iostream>   
using namespace std;  
using namespace boost;  

regex expression("^select ([a-zA-Z]*) from ([a-zA-Z]*)");//定義正則表達式expression   

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))//regex_match:匹配算法,用於測試一個字符串是否和正則式匹配   
    {  
        for(int i=0;i<what.size();i++)  
            cout<<"str :"<<what[i].str()<<endl;  
    }  
    else  
    {  
        cout<<"Error Input"<<endl;  
    }  

    system("pause");

    return 0;  
} 

Boost之正則表達式Regex庫的使用方法