트랙
/
C#
C#
/
연습 문제
/
로그 레벨
로그 레벨

로그 레벨

학습 연습 문제

소개

문자열

C#에서 string은 변경할 수 없는 텍스트를 유니코드 문자(글자, 숫자, 문장 부호 등)의 나열로 나타내는 객체예요. string 인스턴스는 큰따옴표로 정의해요.

string fruit = "Apple";

메서드

문자열은 문자열의 내장 메서드를 호출해서 다뤄요. 예를 들어 문자열에서 공백을 없애려면 다음과 같이 Trim 메서드를 사용할 수 있어요.

string name = " Jane "
name.Trim()
// => "Jane"

문자열은 한 번 만들어지면 그 값을 절대 바꿀 수 없어요. 문자열을 수정하는 것처럼 보이는 메서드도 실제로는 새로운 문자열을 반환해요.

연결

여러 문자열을 서로 연결(더하기)할 수 있어요. 가장 간단한 방법은 + 연산자를 사용하는 거예요.

string name = "Jane";
"Hello " + name + "!";
// => "Hello Jane!"

서식 지정

단순한 연결보다 복잡한 문자열 서식에는 문자열 보간을 사용하는 게 좋아요. 문자열에서 보간을 사용하려면 문자열 앞에 달러($) 기호를 붙여요. 그런 다음 중괄호({})를 사용해 문자열 안의 변수에 접근할 수 있어요.

string name = "Jane";
$"Hello {name}!";
// => "Hello Jane!"

지침

이 연습 문제에서는 로그 라인을 처리해요.

각 로그 라인은 다음과 같은 형식의 문자열이에요: "[<LEVEL>]: <MESSAGE>".

로그 레벨은 다음 세 가지예요:

  • INFO
  • WARNING
  • ERROR

세 가지 작업이 있어요. 각 작업에서는 로그 라인을 받아 무언가를 처리해야 해요.

1. 로그 라인에서 메시지 가져오기

로그 라인의 메시지를 반환하는 (static) LogLine.Message() 메서드를 구현해요:

LogLine.Message("[ERROR]: Invalid operation")
// => "Invalid operation"

앞뒤 공백은 제거해야 해요:

LogLine.Message("[WARNING]:  Disk almost full\r\n")
// => "Disk almost full"

2. 로그 라인에서 로그 레벨 가져오기

로그 라인의 로그 레벨을 반환하는 (static) LogLine.LogLevel() 메서드를 구현해요. 이때 로그 레벨은 소문자로 반환해야 해요:

LogLine.LogLevel("[ERROR]: Invalid operation")
// => "error"

3. 로그 라인 형식 바꾸기

로그 라인의 형식을 바꿔 메시지를 앞에 두고 로그 레벨을 그 뒤에 괄호로 묶는 (static) LogLine.Reformat() 메서드를 구현해요:

LogLine.Reformat("[INFO]: Operation completed")
// => "Operation completed (info)"
GitHub에서 편집 링크가 새 창이나 탭에서 열려요
C# Exercism

로그 레벨 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 C# 트랙을 개념 62개연습 문제 178개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.