Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# Substring 메서드를 활용한 문자열 회전 방법

C#에서 문자열을 회전하는 것은 Substring() 메서드를 활용하면 간단하게 구현할 수 있습니다. 이 글에서는 문자열의 일부 문자를 앞뒤로 이동시켜 회전하는 방법을 예제와 함께 살펴보겠습니다.

문자열 준비하기

먼저 회전시킬 문자열을 하나 정의합니다.

var str = "welcome";

Substring()으로 문자열 회전하기

문자열의 일부 문자만 회전시키고 싶다면 Substring() 메서드를 사용하면 됩니다. 아래 예제에서는 앞의 2개 문자를 뒤로 보내는 회전을 수행합니다.

Substring(1, str.Length - 1)은 인덱스 1부터 나머지 전체 문자를 가져오고, Substring(0, 2)는 맨 앞의 2개 문자를 추출하여 뒤에 붙이는 방식입니다.

var res = str.Substring(1, str.Length - 1) + str.Substring(0, 2);

전체 코드

다음은 위 내용을 모두 포함한 완전한 코드입니다.

예제

using System;

public class Program {
    public static void Main() {
        var str = "welcome";

        Console.WriteLine("원본 문자열 = " + str);
        var res = str.Substring(1, str.Length - 1) + str.Substring(0, 2);

        Console.WriteLine("두 문자를 회전한 결과: " + res);
    }
}

실행 결과

원본 문자열 = welcome
두 문자를 회전한 결과: elcomewe

동작 원리 정리

위 코드가 실행되는 과정을 단계별로 살펴보면 다음과 같습니다.

1. str.Substring(1, str.Length - 1) → 인덱스 1부터 시작하여 길이가 6인 부분 문자열 "elcome"을 반환합니다.
2. str.Substring(0, 2) → 인덱스 0부터 2개의 문자, 즉 "we"를 반환합니다.
3. 두 문자열을 연결하면 "elcomewe"가 되어, 앞의 두 문자가 뒤로 이동한 회전 결과를 얻을 수 있습니다.

이처럼 Substring() 메서드를 조합하면 별도의 복잡한 알고리즘 없이도 원하는 만큼의 문자를 손쉽게 회전시킬 수 있습니다. 회전할 문자 수를 변수로 바꾸면 n칸 회전도 동일한 방식으로 구현할 수 있습니다.