첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
------------------------------------------------------------------------------------------------------------------------------------------------------
728x90
728x170

■ String 클래스를 사용해 다중 공백 문자열을 단일 공백 문자열로 대체하는 방법을 보여준다.

TestProject.zip
0.00MB

▶ StringExtension.cs

using System.Text;

namespace TestProject;

/// <summary>
/// 문자열 확장
/// </summary>
public static class StringExtension
{
    //////////////////////////////////////////////////////////////////////////////////////////////////// Method
    ////////////////////////////////////////////////////////////////////////////////////////// Static
    //////////////////////////////////////////////////////////////////////////////// Public

    #region 공백 줄이기 - ReduceWhitespace(source)

    /// <summary>
    /// 공백 줄이기
    /// </summary>
    /// <param name="source">소스 문자열</param>
    /// <returns>공백 줄인 문자열</returns>
    public static string ReduceWhitespace(this string source)
    {
        StringBuilder stringBuilder = new StringBuilder();

        bool isPreviousWhitespace = false;

        for(int i = 0; i < source.Length; i++)
        {
            if(char.IsWhiteSpace(source[i]))
            {
                if(isPreviousWhitespace)
                {
                    continue;
                }

                isPreviousWhitespace = true;
            }
            else
            {
                isPreviousWhitespace = false;
            }

            stringBuilder.Append(source[i]);
        }

        return stringBuilder.ToString();
    }

    #endregion
}

 

▶ Program.cs

namespace TestProject;

/// <summary>
/// 프로그램
/// </summary>
class Program
{
    //////////////////////////////////////////////////////////////////////////////////////////////////// Method
    ////////////////////////////////////////////////////////////////////////////////////////// Static
    //////////////////////////////////////////////////////////////////////////////// Private

    #region 프로그램 시작하기 - Main()

    /// <summary>
    /// 프로그램 시작하기
    /// </summary>
    private static void Main()
    {
        string source = "테스트1  테스트2\r\n  테스트3   테스트4";

        string target = source.ReduceWhitespace();

        Console.WriteLine("소스 문자열");
        Console.WriteLine("--------------------------------------------------");
        Console.WriteLine(source);
        Console.WriteLine("--------------------------------------------------");
        Console.WriteLine();
        Console.WriteLine("타겟 문자열");
        Console.WriteLine("--------------------------------------------------");
        Console.WriteLine(target);
        Console.WriteLine("--------------------------------------------------");
    }

    #endregion
}
728x90
그리드형(광고전용)
Posted by icodebroker
,