C#교과서 마스터하기 15. 문자열 활용

https://www.youtube.com/watch?v=ovmC_58wsNY&list=PLO56HZSjrPTB4NxAsEP8HRk6YKBDLbp7m&index=44

1. 문자열 활용

  • 닷넷 프레임워크에 내장되어 있는 클래스 중에서 문자열 관련 클래스는 문자열의 길이 반환, 문자열의 공백 제거, 대/소문자로의 변환 등의 기능을 하는 메서드 등을 제공
  • C#의 문자열은 유니코드(Unicode) 문자열이기에 다국어를 지원하고 문자열 관련 모든 기능도 다국어를 제대로 처리한다
  • String ClassStringBuilder Class가 있다

01. 문자열

  • " 곁 따옴표로 묶어준다.
string message = "hello world";

02. 문자열 주요 메서드 및 기능

-1. 대소문자 변환(.ToUpper() & .ToLower())

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message = "hello world";

            WriteLine(message.ToUpper());
            WriteLine(message.ToLower());
        }
    }
}

-2. 문자열 치환(.Replace(old, new))

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message = "hello world";

            WriteLine(message.Replace("hello", "hi"));
        }
    }
}

-3. 문자열 길이(.Length)

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message = "hello world";

            WriteLine(message.Length);
        }
    }
}

-4. 양끝 공백 제거(.Trim())

  • 양 끝 공백 제거
using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message = "   hello world    ";

            WriteLine(message);
            WriteLine(message.Trim());
        }
    }
}

-5. 문자열 확인(.Contains(searchString))

  • 문자열 안에 특정 문자나 문자열이 있는지 확인 후 boolean 타입을 반환
using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message = "hello world";

            WriteLine(message.Contains("hello"));
            WriteLine(message.Contains("hi"));

        }
    }
}

-6. 시작&끝 문자 확인(.StartWith(searchString) & .EndWith(searchString))

  • 지정한 문자로 시작&끝 나는지를 확인합니다.
using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message = "hello world";

            WriteLine(message.StartsWith("hello"));
            WriteLine(message.StartsWith("hi"));
            WriteLine(message.EndsWith('d'));
            WriteLine(message.EndsWith('k'));

        }
    }
}

-7. 문자열 비교(.Equals(compareString) & ==)

  • 기준 문자열과 비교 문자열을 비교하여 동일한지 확인 후 boolean 값 반환
  • *StringComparison 비교 옵션 추가
    • StringComparison.InvariantCultureIgnoreCase, 대소문자 구별 안하는 옵션
    • StringComparison.OrdinalIgnoreCase, 대소문자 구별 안하는 옵션
using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string DbUserName = "Kain";
            string InputUserName = "kain";

            WriteLine(DbUserName == InputUserName);
            WriteLine(DbUserName.ToLower() == InputUserName.ToLower());
            WriteLine(DbUserName.Equals(InputUserName));
            // StringComparison.InvariantCultureIgnoreCase
            // 대소문자 구별 안하는 옵션
            WriteLine(DbUserName.Equals(InputUserName, StringComparison.InvariantCultureIgnoreCase));
        }
    }
}

-8. 문자열 삽입(.Insert(startIndex, insertString))

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message1 = "defg";
  

            WriteLine(message1.Insert(2, "abc"));
            
        }
    }
}

-9. 문자열 삭제(.Remove(startIndex, deleteLength))

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message1 = "hihihihihihihi";
            string message2 = "abczzzdefg";

            WriteLine(message1.Remove(2));
            WriteLine(message2.Remove(3, 3));
        }
    }
}

-10. 문자열 자르기(.Split(splitKeword))

  • 배열로 반환
using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string message1 = "hi,hello, good morning";

            string[] arr = message1.Split(',');
            foreach (string word in arr)
            {
                WriteLine(word);
            }
        }
    }
}

-11. 문자열 연결(+, String.Concat(str1, str2))

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            String s1 = "안녕" + "하세요";

            string s2 = String.Concat("안녕", "하세요");

            string s3 = String.Concat(s1, s2);

            WriteLine($"{s1} & {s2} & {s3}");
        }
    }
}

-12. 문자열 To 문자 배열(.ToCharArray())

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            string s1 = "안녕하세요";

            char[] chArr = s1.ToCharArray();

            foreach(char ch in chArr)
            {
                WriteLine(ch);
            }
        }
    }
}

-13. 문자열 묶는 가지 표현 방법(, string.Format(), $"{}")

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            // 문자열 묶는 가지 표현 방법
            string fullName;
            string firstName = "민승";
            string lastName = "문";
            fullName = firstName + lastName;
            WriteLine(firstName);

            fullName = "";
            firstName = string.Format("{0}{1}", firstName, lastName);
            WriteLine(firstName);

            fullName = "";
            fullName = $"{firstName}{lastName}";
            WriteLine(firstName);
        }
    }
}

02. System.String Class == string keyword

using System;
using static System.Console;

namespace testProject
{
    class Program
    {

        static void Main(string[] args)
        {
            String s1 = "안녕하세요"; // String Class

            string s2 = "안녕하세요";  // String keyword

            WriteLine($"{s1} & {s2}");

            WriteLine(s1.Equals(s2));
        }
    }
}

좋은 웹페이지 즐겨찾기