外部ライブラリを使用せずにいくつかの単語を置き換えたい。私の最初の試みは文字列のコピーを作成することでしたが、効率的ではなかったので、これは私がアドレスを使用する別の試みです:
void ReplaceString(std::string &subject, const std::string &search, const std::string &replace)
{
size_t position = 0;
while ((position = subject.find(search, position)) != std::string::npos) //if something messes up --> failure
{
subject.replace(position, search.length(), replace);
position = position + replace.length();
}
}
これもあまり効率的ではないので、別のものを使用したいのですが、行き詰まりました。and (for ループなどで解析する) をreplace_stuff(std::string & a);
使用して単一のパラメーターを使用するような関数を使用し、それを使用して非常に便利にしたいと考えています。string.replace()
string.find()
std::map <std::string,std::string>;
大量の入力単語に使いたい。(多くの悪い言葉を無害なものに置き換えるとしましょう)