Функция replace
Функция replace из заголовочного файла algorithm заменяет все элементы в диапазоне [first, last), которые равны заданному значению, на новое значение. Первым и вторым параметрами функция принимает итераторы начала и конца диапазона, третьим параметром - старое значение, которое нужно заменить, а четвёртым - новое значение, на которое следует заменить.
Синтаксис
replace(first, last, old_value, new_value);
Пример
Давайте заменим все элементы, равные 3, на 9 в векторе:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<int> vec = {1, 2, 3, 4, 5};
replace(vec.begin(), vec.end(), 3, 9);
for (int elem : vec) {
cout << elem << " ";
}
cout << endl;
return 0;
}
Результат выполнения кода:
1 2 9 4 5
Пример
Давайте заменим все символы 'b' на 'x' в строке:
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main()
{
string str = "abcde";
replace(str.begin(), str.end(), 'b', 'x');
cout << str << endl;
return 0;
}
Результат выполнения кода:
"axcde"
Смотрите также
-
функция
replace_if,
которая заменяет элементы по условию -
функция
find,
которая ищет элемент в диапазоне -
функция
count,
которая подсчитывает количество элементов -
функция
for_each,
которая применяет функцию к каждому элементу