|
Boost Users : |
From: Johan Nilsson (r.johan.nilsson_at_[hidden])
Date: 2006-05-22 07:53:15
Hi,
I'd like to replace all parts of a string with the results of calling a
function, passing the match as a parameter. Some pseudo-code:
--- std::string replacer(smatch& s) { return std::getenv(s[1].c_str()); } std::string const input = "This is ${USER} on ${HOST}"; boost::regex const re("\\$\\{([^\\}]+)\\}"); std::string result = boost::regex_replace(input, re, boost::bind(&replacer)); assert("This is Me on MyWorkstation" == result); --- (I'm sure there are errors above, but I hope you get the general idea). Any easy way to do something similar? // Johan
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net