replace_regex_copy
принимает boost::regex
в качестве второго аргумента, а не std::string
.
Существует явное преобразование из std::string
в boost::regex
, но неявное преобразование не существует, поэтому вы можете исправить свой код, изменив его на ...
string f(const string& s) {
using namespace boost::algorithm;
return replace_regex_copy(s, boost::regex("\\w"), "?");
}