Boost之正则表达式Regex库的使用方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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库的使用方法的主要内容,如果未能解决你的问题,请参考以下文章

boost库之正则表达式regex

与 boost 正则表达式库的递归匹配

boost和c++11的正则表达式regex和线程thread对比

使用 Boost::regex 进行正则表达式组匹配

15Java常用类(数组工具类Arrays)基本类型包装类(Integer类)正则表达式String的split(String regex)和replaceAll(String regex, (代码片

C++ 中三种正则表达式比较(C regex,C ++regex,boost regex)