C語言下, 正則式的匹配

核心的實現代碼是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;

    }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章