在C語言中,可以使用strstr()
函數來找到指定字符串在目標字符串中的位置,然后使用strcpy()
函數將新的字符串替換原有的字符串。
下面是一個示例代碼:
#include <stdio.h>
#include <string.h>
void replaceString(char *source, const char *find, const char *replace) {
char *found = strstr(source, find);
if (found) {
char newString[100]; //假設最大長度為100
strncpy(newString, source, found - source);
newString[found - source] = '\0';
strcat(newString, replace);
strcat(newString, found + strlen(find));
strcpy(source, newString);
}
}
int main() {
char str[] = "Hello, World!";
const char *find = "World";
const char *replace = "C Programming";
replaceString(str, find, replace);
printf("%s\n", str);
return 0;
}
在這個示例中,我們定義了replaceString()
函數,該函數接受一個源字符串、要查找的字符串和要替換的字符串作為參數。通過strstr()
函數找到要替換的字符串在源字符串中的位置,然后使用strncpy()
和strcat()
函數構建新的字符串,最后使用strcpy()
函數將新的字符串替換原有的字符串。
在main()
函數中,我們定義了一個源字符串str
,要查找的字符串find
和要替換的字符串replace
,然后調用replaceString()
函數來替換指定的字符串。最后打印出替換后的字符串。