[应用方案] 字符串的替换操作

[复制链接]
2011|0
 楼主| ulystronglll 发表于 2024-5-30 10:05 | 显示全部楼层 |阅读模式


  1. #include <stdio.h>
  2. #include <string.h>

  3. void custom_replace(char *str, const char *find, const char *replace) {
  4.     int find_len = strlen(find);
  5.     int replace_len = strlen(replace);
  6.     int str_len = strlen(str);

  7.     for (int i = 0; i <= str_len - find_len; i++) {
  8.         int j;
  9.         for (j = 0; j < find_len; j++) {
  10.             if (str[i + j] != find[j]) {
  11.                 break;
  12.             }
  13.         }
  14.         if (j == find_len) {
  15.             memmove(str + i + replace_len, str + i + find_len, str_len - i - find_len + 1);
  16.             memcpy(str + i, replace, replace_len);
  17.             str_len = str_len - find_len + replace_len;
  18.         }
  19.     }
  20. }

  21. int main() {
  22.     char str[] = "Hello, world! This is a test.";
  23.     const char *find = "world";
  24.     const char *replace = "universe";

  25.     custom_replace(str, find, replace);

  26.     printf("Modified string: %s\n", str);

  27.     return 0;
  28. }


您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

1468

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部