Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 문자열의 일부를 다른 문자열로 바꾸기


여기서 C++에서 문자열의 일부를 다른 문자열로 바꾸는 방법을 살펴보겠습니다. C++에서는 교체가 매우 쉽습니다. string.replace()라는 함수가 있습니다. 이 바꾸기 기능은 일치 항목의 첫 번째 항목만 바꿉니다. 우리는 루프를 사용했습니다. 이 대체 함수는 대체할 위치에서 인덱스를 가져오고 문자열의 길이와 일치하는 문자열 자리에 배치될 문자열을 가져옵니다.

Input: A string "Hello...Here all Hello will be replaced", and another string to replace "ABCDE"
Output: "ABCDE...Here all ABCDE will be replaced"

알고리즘

Step 1: Get the main string, and the string which will be replaced. And the match string
Step 2: While the match string is present in the main string:
Step 2.1: Replace it with the given string.
Step 3: Return the modified string

예시 코드

#include<iostream>
using namespace std;
main() {
   int index;
   string my_str = "Hello...Here all Hello will be replaced";
   string sub_str = "ABCDE";
   cout << "Initial String :" << my_str << endl;
   //replace all Hello with welcome
   while((index = my_str.find("Hello")) != string::npos) {    //for each location where Hello is found
      my_str.replace(index, sub_str.length(), sub_str); //remove and replace from that position
   }
   cout << "Final String :" << my_str;
}

출력

Initial String :Hello...Here all Hello will be replaced
Final String :ABCDE...Here all ABCDE will be replaced