std::string
の方法find_first_of
を使用することをお勧めします。
標準的なアルゴリズムを使用するように、私はこのケースで最も適切なアルゴリズムがstd::replace_if
であると思われる場合の例
#include <iostream>
#include <string>
int main()
{
std::string s("Hola Pepe, com va la vida");
std::string t("aeiou");
char c = '*';
std::cout << s << std::endl;
for (std::string::size_type pos = 0;
(pos = s.find_first_of(t, pos)) != std::string::npos;
++pos)
{
//s.replace(pos, 1, 1, c);
s[pos] = c;
}
std::cout << s << std::endl;
}
ためのプログラム出力は
Hola Pepe, com va la vida
H*l* P*p*, c*m v* l* v*d*
です。理由だけではなく、すべての文字列を反復処理し、必要に応じて文字を変更しないでください
Hola Pepe, com va la vida
H*l* P*p*, c*m v* l* v*d*
上記のように例えば
プログラムの出力は同じですか? – alexeykuzmin0
これまでに試したことをお見せしてください。コード作成サービスではないので、http://stackoverflow.com/help/how-to-askとhttp://stackoverflow.com/help/mcveを参照してください。 –
@Kinyu 96使用方法find_first_of –