C语言下, 正则式的匹配

来源:互联网 发布:淘宝买东西怎么加购 编辑:程序博客网 时间:2024/05/30 07:12

核心的实现代码是C的. 为了工程需要, 写成了一个类的方法. 

以备忘!

 

#include <regex.h>

bool Tools::isRegularExpressMatch(const char* p_strPattern, const char* p_strThatBeChecked){

    int l_iStatus;

    int l_cflags = REG_EXTENDED;

    regmatch_t pmatch[1];

    const size_t nmatch = 1;

    regex_t reg;

    

    regcomp(&reg, p_strPattern, l_cflags);

    l_iStatus = regexec(&reg, p_strThatBeChecked, nmatch, pmatch, 0);

    regfree(&reg);

    if(l_iStatus == REG_NOMATCH){

        return false;

    }else{

        return true;

    }

}