C#의 Trim() 메서드는 현재 문자열에서 지정한 문자들이 문자열의 앞쪽(선행)과 뒤쪽(후행)에 나타나는 모든 부분을 제거하고, 그 결과로 새로운 문자열을 반환하는 데 사용됩니다.
주로 사용자 입력값의 불필요한 공백을 제거하거나, 문자열 데이터를 정리할 때 유용하게 활용됩니다.
문법(Syntax)
public string Trim (); public string Trim (params char[] trimChars);
위 문법에서 trimChars 매개변수는 제거할 유니코드 문자들의 배열이며, null일 수도 있습니다. 매개변수를 전달하지 않으면 기본적으로 공백(whitespace) 문자가 제거됩니다.
예제 1: 기본 공백 제거
using System;
using System.Globalization;
public class Demo {
public static void Main(String[] args) {
string str1 = " JackSparrow!";
string str2 = " @#$PQRSTUV!";
Console.WriteLine("String1 = "+str1);
Console.WriteLine("String1 (after trim) = "+str1.Trim());
Console.WriteLine("String1 ToUpper = "+str1.ToUpper(new CultureInfo("en-US", false)));
Console.WriteLine("String1 Substring from index4 = " + str1.Substring(2, 2));
Console.WriteLine("
String2 = "+str2);
Console.WriteLine("String2 ToUpper = "+str2.ToUpper(new CultureInfo("en-US", false)));
Console.WriteLine("String2 Substring from index2 = " + str2.Substring(0, 5));
}
}출력 결과
String1 = JackSparrow! String1 (after trim) = JackSparrow! String1 ToUpper = JACKSPARROW! String1 Substring from index4 = String2 = @#$PQRSTUV! String2 ToUpper = @#$PQRSTUV! String2 Substring from index2 = @
위 실행 결과를 보면 Trim() 호출 후 문자열 앞에 있던 공백이 모두 제거된 것을 확인할 수 있습니다.
예제 2: 특정 문자 제거하기
Trim() 메서드에 문자 배열을 인자로 전달하면, 해당 문자들을 문자열의 시작과 끝에서 제거할 수 있습니다.
using System;
public class Demo {
public static void Main(String[] args) {
string str = "JackSparrow!";
char[] arr = { 'J', 'a'};
Console.WriteLine("String = "+str);
Console.WriteLine("String (after trim) = " + str.Trim(arr));
}
}출력 결과
String = JackSparrow! String (after trim) = ckSparrow!
위 예제에서는 문자 배열 {'J', 'a'}를 전달했기 때문에, 문자열 시작 부분의 'J'와 'a'가 순서대로 제거되어 최종 결과가 ckSparrow!가 된 것을 볼 수 있습니다.
정리
- Trim(): 문자열 양 끝의 공백을 제거합니다.
- Trim(char[]): 문자열 양 끝에서 지정한 문자들을 제거합니다.
- Trim()은 원본 문자열을 변경하지 않고 새로운 문자열을 반환합니다(C# 문자열은 불변(immutable)입니다).