1
Лучшее, что я могу придумать это:Группа поиска и замены Regex в C++?
#include <boost/algorithm/string/replace.hpp>
#include <boost/regex.hpp>
#include <iostream>
using namespace std;
int main() {
string dog = "scooby-doo";
boost::regex pattern("(\\w+)-doo");
boost::smatch groups;
if (boost::regex_match(dog, groups, pattern))
boost::replace_all(dog, string(groups[1]), "scrappy");
cout << dog << endl;
}
с выходом:
scrappy-doo
.. есть более простой способ сделать это, что не включает в себя выполнение двух различных поисков? Может быть, с новым материалом C++ 11 (хотя я не уверен, что он совместим с gcc atm?)
Я вижу. Я нахожу этот интерфейс контр-интуитивным, так как вам нужно эффективно перестроить новую строку, используя синтаксис $ x, чтобы представлять группы регулярных выражений в предыдущей строке. При этом я не могу придумать ничего лучшего – mavix