c++ replace函数
作者:野牛程序员:2024-12-19 07:56:45 C++阅读 2357
c++ replace函数
在 C++ 中,replace
函数可以用来替换字符串中的指定字符或子字符串。这个函数是 C++ 标准库 <algorithm>
中的一个算法,常用于修改容器中的元素。对于字符串操作,通常会使用 std::string
类提供的成员函数 replace
。
1. std::replace
函数(替换单个字符)
std::replace
用来将字符串中的所有指定字符替换成另一个字符。它的定义如下:
template <class ForwardIterator, class T> ForwardIterator replace(ForwardIterator first, ForwardIterator last, const T& old_value, const T& new_value);
first
,last
:指定要操作的范围的起始和结束迭代器。old_value
:要被替换的字符。new_value
:替换成的字符。
替换字符串中的字符
#include <iostream> #include <algorithm> // std::replace #include <string> int main() { std::string str = "Hello World!"; std::replace(str.begin(), str.end(), 'o', 'O'); // 将'o'替换为'O' std::cout << str << std::endl; // 输出 "HellO WOrld!" return 0; }
2. std::string::replace
成员函数(替换子字符串)
std::string
也提供了一个 replace
成员函数,用于替换子字符串。其定义如下:
std::string& replace(size_t pos, size_t len, const std::string& str); std::string& replace(size_t pos, size_t len, const char* cstr); std::string& replace(size_t pos, size_t len, const char* cstr, size_t n);
pos
:替换开始的位置。len
:要替换的字符数。str
或cstr
:替换的字符串或字符数组。
替换字符串中的子字符串
#include <iostream> #include <string> int main() { std::string str = "Hello World!"; str.replace(6, 5, "C++"); // 从位置6开始,替换5个字符为 "C++" std::cout << str << std::endl; // 输出 "Hello C++!" return 0; }
std::replace
适用于替换字符,适用于 C++ 容器(如std::vector
)和 C 风格字符串。std::string::replace
用于替换std::string
中的子字符串,可以选择根据位置、长度等进行替换。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:狗可以吃椰子吗?
- 下一篇: C++ 中的位置索引是从 0 开始的吗?