C#에서 StringBuilder는 문자열을 효율적으로 조작할 수 있는 강력한 클래스입니다. 이번 글에서는 StringBuilder에 저장된 문자열에서 특정 인덱스 위치부터 지정한 개수만큼 문자를 제거하는 방법을 알아보겠습니다.
1. StringBuilder 객체 생성하기
먼저 다음과 같이 StringBuilder 객체를 생성하고 초기 문자열을 설정합니다.
StringBuilder str = new StringBuilder("Airport");2. Remove() 메서드로 문자 제거하기
문자를 제거하려면 Remove() 메서드를 사용합니다. 이 메서드는 두 개의 매개변수를 받습니다.
- 첫 번째 매개변수: 제거를 시작할 인덱스 위치
- 두 번째 매개변수: 제거할 문자의 개수
예를 들어, 인덱스 3부터 4개의 문자를 제거하려면 다음과 같이 작성합니다.
str.Remove(3, 4);
위 코드는 3번째 인덱스(즉, 네 번째 위치)부터 4개의 문자를 제거합니다. "Airport"라는 문자열에서 'p'부터 시작하는 4글자가 삭제되어 "Air"만 남게 됩니다.
3. 전체 예제 코드
지금까지 설명한 내용을 포함한 완전한 코드는 다음과 같습니다.
예제
using System;
using System.Text;
public class Program {
public static void Main() {
StringBuilder str = new StringBuilder("Airport");
Console.WriteLine("String: "+str);
// 네 개의 문자 제거
Console.Write("String after removing characters: ");
str.Remove(3, 4);
Console.WriteLine(str);
}
}실행 결과
String: Airport String after removing characters: Air
정리
StringBuilder의 Remove(int startIndex, int length) 메서드를 활용하면 특정 위치부터 원하는 길이만큼 문자를 손쉽게 삭제할 수 있습니다. 문자열 반복 수정 작업이 많은 경우 String 대신 StringBuilder를 사용하면 성능 면에서도 큰 이점을 얻을 수 있습니다.