C#에서는 Regex.Replace 메서드를 사용하여 문자열의 끝 부분을 손쉽게 제거할 수 있습니다. 정규식(Regular Expression)을 활용한 이 방법은 특정 문자나 패턴을 빈 문자열로 치환하는 방식으로 동작합니다.
문자열 준비하기
먼저 다음과 같은 문자열이 있다고 가정해 보겠습니다.
string s1 = "Demo Text!";
느낌표(!) 제거하기
이제 위 문자열에서 끝에 있는 느낌표(!)를 제거하고 싶다고 가정해 보겠습니다. 이 경우 Regex.Replace 메서드를 사용하여 해당 문자를 빈 문자열(" ")로 치환하면 됩니다.
System.Text.RegularExpressions.Regex.Replace(s1, "!", "");
전체 예제 코드
아래는 위 내용을 모두 포함한 완성된 코드입니다.
using System;
using System.Text.RegularExpressions;
namespace Demo {
class Program {
static void Main(string[] args) {
string s1 = "Demo Text!";
// 끝 부분 치환
string s2 = System.Text.RegularExpressions.Regex.Replace(s1, "!", "");
Console.WriteLine("\"{0}\"\n\"{1}\"", s1, s2);
}
}
}실행 결과
"Demo Text!" "Demo Text"
코드 설명
- Regex.Replace(s1, "!", "") : 첫 번째 인수는 원본 문자열, 두 번째 인수는 찾을 패턴, 세 번째 인수는 대체할 문자열입니다.
- 느낌표가 빈 문자열로 대체되면서 결과적으로 "Demo Text"가 출력됩니다.
참고로, 단순히 마지막 한 글자만 제거하고 싶다면 Remove 메서드나 Substring 메서드를 사용하는 것도 좋은 대안입니다. 하지만 여러 개의 특정 문자를 한꺼번에 제거해야 하는 경우에는 Regex.Replace가 훨씬 더 유연하고 강력한 선택입니다.