使用带有unicode字符串的tr1 :: regex的问题

时间:2011-08-08 10:04:40

标签: c++ regex compiler-errors tr1

    std::wstring str(L"something");
    std::tr1::wregex rx(L"something");
    std::tr1::wcmatch res;
    std::tr1::regex_search(str, res, rx);       

无法使用错误进行编译:

error C2784: 'bool std::tr1::regex_search(const std::basic_string<_Elem,_StTraits,_StAlloc> &,const std::tr1::basic_regex<_Elem,_RxTraits> &,std::tr1::regex_constants::match_flag_type)' : could not deduce template argument for 'const std::tr1::basic_regex<_Elem,_RxTraits> &' from 'std::tr1::wcmatch'

1 个答案:

答案 0 :(得分:3)

您应该使用的wsmatch用于wstring迭代器,而不是wcmatch,用于wchar_t*