c++将string中的子串替换为另一个不一样长的子串
时间: 2024-10-27 15:09:01 浏览: 21
在 C++ 中,你可以使用 `std::string` 类的 `replace` 或 `substr` 和 `insert` 函数来替换一个子串为另一个字符串。下面是一个基本的步骤:
1. **获取原始字符串** (source_string) 和两个子串:
```cpp
std::string source_string = "Hello, World!";
std::string old_substring = "World";
std::string new_substring = "C++";
```
2. **找到旧子串的位置** (start_index) 以及它在原字符串中的长度 (length):
```cpp
size_t start_index = source_string.find(old_substring);
if (start_index == std::string::npos) {
// 如果找不到旧子串,则返回
return;
}
size_t length = old_substring.length();
```
3. **使用 `replace` 函数替换子串**:
```cpp
source_string.replace(start_index, length, new_substring);
```
4. **结果字符串就是替换后的字符串**:
```cpp
std::cout << "Replaced string: " << source_string << std::endl;
```
阅读全文