-
C# 프로그래밍의 기초 : 문자열 다루기2024년 03월 02일
- 유니얼
-
작성자
-
2024.03.02.:09
728x90C#에서 문자열(string)은 매우 중요한 부분을 차지하며, System.String 클래스를 통해 다룹니다. 이 클래스는 문자 데이터를 저장하고 관리하는 데 필요한 다양한 속성과 메서드를 제공합니다. 문자열은 변경 불가능(immutable)한 특성을 가지고 있어, 문자열을 조작하는 모든 메서드는 원본 문자열을 변경하는 대신 새로운 문자열 인스턴스를 반환합니다.
문자열의 기본
문자열 초기화
문자열 변수는 큰따옴표("")를 사용하여 초기화할 수 있습니다. 예를 들어, string name = "John";은 "John"이라는 값을 가지는 문자열 변수를 생성합니다.
string name = "John"; Console.WriteLine(name); // 출력: John
문자열 보간
C# 6.0 이상에서는 문자열 보간을 통해 변수나 표현식의 값을 문자열 내에 직접 삽입할 수 있습니다. 사용 방법은 문자열 앞에 $ 기호를 붙이고, 중괄호 {} 안에 변수나 표현식을 넣으면 됩니다. 예: Console.WriteLine($"Hello {name}!");
string greeting = $"Hello {name}!"; Console.WriteLine(greeting); // 출력: Hello John!
문자열 길이
Length 속성을 사용하여 문자열의 길이(문자 수)를 얻을 수 있습니다. 예: Console.WriteLine(name.Length);
Console.WriteLine(name.Length); // 출력: 4
문자열 대소문자 변환
ToUpper() 메서드와 ToLower() 메서드를 사용하여 문자열을 대문자 또는 소문자로 변환할 수 있습니다.
Console.WriteLine(name.ToUpper()); // 출력: JOHN Console.WriteLine(name.ToLower()); // 출력: john
문자열 포함 여부
Contains() 메서드를 사용하여 특정 문자열이 주어진 문자열에 포함되어 있는지 여부를 확인할 수 있습니다.
Console.WriteLine(name.Contains("oh")); // 출력: True
문자열 비교
Equals() 메서드 또는 == 연산자를 사용하여 두 문자열이 같은지 비교할 수 있습니다.
Console.WriteLine(name.Equals("John")); // 출력: True Console.WriteLine(name == "John"); // 출력: True
문자열 조작 기법
문자열 분할
Split() 메서드를 사용하여 문자열을 분할하고, 분할된 문자열을 배열로 반환할 수 있습니다.
string data = "apple,orange,banana"; string[] fruits = data.Split(','); foreach (var fruit in fruits) { Console.WriteLine(fruit); } // 출력: // apple // orange // banana
문자열 치환
Replace() 메서드를 사용하여 문자열 내의 특정 문자 또는 문자열을 다른 문자 또는 문자열로 치환할 수 있습니다.
string replacedString = name.Replace("John", "Jane"); Console.WriteLine(replacedString); // 출력: Jane
문자열 잘라내기
Substring() 메서드를 사용하여 문자열의 특정 부분을 추출할 수 있습니다.
string substring = name.Substring(1, 2); Console.WriteLine(substring); // 출력: oh
문자열 공백 처리
Trim(), TrimStart(), TrimEnd() 메서드를 사용하여 문자열의 시작과 끝에 있는 공백을 제거할 수 있습니다.
string greetingWithSpace = " Hello World! "; Console.WriteLine($"'{greetingWithSpace.Trim()}'"); // 출력: 'Hello World!' Console.WriteLine($"'{greetingWithSpace.TrimStart()}'"); // 출력: 'Hello World! ' Console.WriteLine($"'{greetingWithSpace.TrimEnd()}'"); // 출력: ' Hello World!'
전체코드
using System; class Program { static void Main(string[] args) { // 문자열 초기화 및 문자열 보간 string name = "John"; Console.WriteLine($"Hello {name}!"); // "Hello John!" // 문자열 길이 Console.WriteLine(name.Length); // 4 // 문자열 대소문자 변환 Console.WriteLine(name.ToUpper()); // "JOHN" Console.WriteLine(name.ToLower()); // "john" // 문자열 포함 여부 Console.WriteLine(name.Contains("oh")); // True // 문자열 비교 Console.WriteLine(name.Equals("John")); // True Console.WriteLine(name == "John"); // True // 문자열 분할 string data = "apple,orange,banana"; string[] fruits = data.Split(','); foreach (var fruit in fruits) { Console.WriteLine(fruit); } // apple // orange // banana // 문자열 치환 string replacedString = name.Replace("John", "Jane"); Console.WriteLine(replacedString); // "Jane" // 문자열 잘라내기 string substring = name.Substring(1, 2); Console.WriteLine(substring); // "oh" // 문자열 공백 처리 string greeting = " Hello World! "; Console.WriteLine($"'{greeting.Trim()}'"); // "'Hello World!'" Console.WriteLine($"'{greeting.TrimStart()}'"); // "'Hello World! '" Console.WriteLine($"'{greeting.TrimEnd()}'"); // "' Hello World!'" } }
결론
C#에서 문자열을 효율적으로 다루는 것은 프로그래밍에서 매우 중요합니다. System.String 클래스가 제공하는 다양한 메서드를 이해하고 사용함으로써, 문자열 데이터의 저장, 검색, 비교, 변환, 조작 등을 쉽게 수행할 수 있습니다. 이러한 기능들은 데이터 처리, 사용자 입력 검증, 파일 입출력 등 다양한 상황에서 유용하게 사용될 수 있습니다.
반응형다음글이전글이전 글이 없습니다.댓글