우노
[C++] 특정 문자열 변경 및 치환 본문
들어가기 앞서,
- C++ 에선, replace 와 regex_replace 를 사용해,
- 특정 문자열을 변경 및 치환할 수 있습니다.
replace
replace 는, 대상 문자열의 위치 기반으로 문자열을 변경할 수 있습니다.
사용 방법
- 문자열.replace(변경 시작 index, 변경 길이, 변경 문자열)
예제 코드
다양한 오버로딩이 존재하지만, 간단한 예제만 다루겠습니다.
#include <iostream> #include <string> using namespace std; int main() { string str1 = "aabbcc"; cout << str1.replace(0, 2, "zz") << endl; //zzbbcc return 0; }
regex_replace
regex_replace 는, 대상 문자열에서 정규 표현식에 해당하는 문자열을 검색한 뒤 변경할 수 있습니다.
- 정규 표현식은 어떤 문자열을 검색하느냐에 따라 달라집니다.
사용 방법
- regex_replace.(대상 문자열, regex(정규표현식), 변경 문자열)
예제 코드
#include <iostream> #include <string> #include <regex> using namespace std; int main() { string str1 = "aaa...bbb"; // 마침표(.)가 2번 이상 연속된 부분은 하나의 마침표(.)로 치환 str1 = regex_replace( str1 , regex("[.]+"), "." ); cout << str1 << endl; // aaa.bbb return 0; }
'Language > C++' 카테고리의 다른 글
[C++] 특정 문자열 제거 (0) | 2022.05.06 |
---|---|
[C++] 문자열 추가 및 삽입 (0) | 2022.05.06 |
[C++] 문자열 대문자 소문자 변환 방법 (0) | 2022.05.06 |
[C++] 범위 기반 for 문 (0) | 2022.04.26 |
[C++] 1차원 Vector 초기화 (0) | 2022.04.26 |
Comments