我想找到所有类似“{some text}”的东西。
我的代码是:
std::wregex e(L"(\\{([a-z]+)\\})");
std::wsmatch m;
std::regex_search(chatMessage, m, e);
std::wcout << "matches for '" << chatMessage << "'\n";
for (size_t i = 0; i < m.size(); ++i) {
std::wssub_match sub_match = m[i];
std::wstring sub_match_str = sub_match.str();
std::wcout << i << ": " << sub_match_str << '\n';
}
但是对于这样的字符串: L"Roses {aaa} {bbb} are {ccc} #ff0000") 我的输出是:
0: {aaa}
1: {aaa}
2: aaa
而且我没有得到下一个子字符串。我怀疑我的正则表达式有问题。你们中的任何人都知道出了什么问题吗?