unsigned char を含む正規表現パターンを作成する方法はありますか? 私はもう試した:
regex* r = new regex("\\xff");
パターン文字が範囲外であるという例外が発生します。また、正規表現インクルード ファイルのコードに従って独自の basic_regex と独自の regex_traits を定義しようとしましたが、ローカル インクルードで奇妙なエラーが発生します。
どんな助けでも大歓迎です。
これは ECMAScript 正規表現 (C++ がデフォルトで使用するもの) の正当な HexEscapeSequence であり、私のテストでは動作するようです:
#include <iostream>
#include <regex>
int main()
{
std::regex re("\\xff");
std::string test = "abc\xff";
std::smatch m;
regex_search(test, m, re);
std::cout << "Found " << m.size() << " match after '"
<< m.prefix() << "'\n";
}
clang++/libc++: 'abc' の後に 1 つの一致が見つかりました
g++/boost.regex (std:: を boost:: に置き換える):「abc」の後に 1 つの一致が見つかりました
あなたの実装は何ですか?