BOOST正则表达式库处理中文

    技术2022-05-11  55

    如果中文字符串保存在char数组中,需要先将它转换成wchar_t型的,0x4e00-0x9fa5表示汉字。

    bool CheckNameStyle(const char * str){    wchar_t * reg_str = L"[/x4e00-/x9fa5//w]+"  //汉字,英文字母,数字,下滑线

        wchar_t w_str[512];    long dwNum = MultiByteToWideChar(CP_ACP, NULL, str,  -1, w_str, sizeof(w_str));

        wregex expression(reg_str);        wcmatch what;    if(regex_match(w_str, what, expression))        return true;    else        return false;      }

     


    最新回复(0)