C++string replace
时间: 2023-09-13 10:07:59 浏览: 82
你好,C知道!关于C语言中的字符串替换,你可以使用库函数`str_replace`来实现。这个函数不是C标准库的一部分,但你可以自己实现它。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
void str_replace(char *str, const char *old, const char *new) {
char result[100];
int i, count = 0;
int new_len = strlen(new);
int old_len = strlen(old);
for (i = 0; str[i] != '\0'; i++) {
if (strstr(&str[i], old) == &str[i]) {
count++;
i += old_len - 1;
}
}
char *temp = result;
while (*str) {
if (strstr(str, old) == str) {
strcpy(temp, new);
temp += new_len;
str += old_len;
} else {
*temp++ = *str++;
}
}
*temp = '\0';
strcpy(str, result);
}
int main() {
char str[] = "Hello World";
str_replace(str, "World", "Universe");
printf("%s\n", str);
return 0;
}
```
这段代码演示了如何使用自定义的`str_replace`函数来将字符串中的旧子串替换为新子串。在这个例子中,我们将“World”替换为“Universe”,输出结果将会是“Hello Universe”。
希望这个例子能对你有所帮助!如果还有其他问题,请随时提问。
阅读全文