• 티스토리 홈
  • 프로필사진
    유니얼
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
유니얼
  • 프로필사진
    유니얼
    • 분류 전체보기 (295)
      • Unity (17)
        • 게임 개발 (5)
      • Unreal (24)
        • 게임 개발 (20)
      • DirectX (36)
      • 코딩테스트 (91)
        • 프로그래머스 (25)
        • 백준 (66)
      • Google Workspace (1)
      • Programing (102)
        • C# (68)
        • C++ (24)
        • JavaScript (10)
      • 게임 서버 프로그래밍 (17)
      • Web (6)
        • 슈퍼코딩 (6)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
    등록된 댓글이 없습니다.
  • 최근 공지
    등록된 공지가 없습니다.
# Home
# 공지사항
#
# 태그
# 검색결과
# 방명록
  • C# 프로그래밍의 기초 : 문자열 다루기
    2024년 03월 02일
    • 유니얼
    • 작성자
    • 2024.03.02.:09
    728x90

    C#에서 문자열(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 클래스가 제공하는 다양한 메서드를 이해하고 사용함으로써, 문자열 데이터의 저장, 검색, 비교, 변환, 조작 등을 쉽게 수행할 수 있습니다. 이러한 기능들은 데이터 처리, 사용자 입력 검증, 파일 입출력 등 다양한 상황에서 유용하게 사용될 수 있습니다.

    반응형
    다음글
    다음 글이 없습니다.
    이전글
    이전 글이 없습니다.
    댓글
조회된 결과가 없습니다.
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
목차
표시할 목차가 없습니다.
    • 안녕하세요
    • 감사해요
    • 잘있어요

    티스토리툴바