728x90
728x170
■ String 클래스를 사용해 다중 공백 문자열을 단일 공백 문자열로 대체하는 방법을 보여준다.
▶ 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
그리드형(광고전용)
'C# > Common' 카테고리의 다른 글
[C#/COMMON/.NET6] Math 클래스 : Truncate 정적 메소드를 사용해 실수 값의 정수 여부 구하기 (0) | 2022.09.02 |
---|---|
[C#/COMMON/.NET6] Math 클래스 : Abs 정적 메소드를 사용해 실수 값의 정수 여부 구하기 (0) | 2022.09.02 |
[C#/COMMON/.NET6] % 연산자 : 실수 값의 정수 여부 구하기 (0) | 2022.09.02 |
[C#/COMMON/.NET6] Regex 클래스 : Split 정적 메소드를 사용해 특정 문자열로 문자열 분리하기 (0) | 2022.09.01 |
[C#/COMMON/.NET6] String 클래스 : Split 메소드를 사용해 특정 문자열로 문자열 분리하기 (0) | 2022.09.01 |
[C#/COMMON/.NET6] DefaultValueAttribute 클래스 : TimeSpan 타입 속성의 디폴트 값 설정하기 (0) | 2022.09.01 |
[C#/COMMON/.NET6] TimeSpan 구조체 : 디폴트 함수 인자 정의하기 (0) | 2022.09.01 |
[C#/COMMON/.NET6] String 클래스 : Join 정적 메소드를 사용해 문자열 결합하기 (0) | 2022.09.01 |
[C#/COMMON/.NET6] 이진 검색 트리(Binary Search Tree) 사용하기 (0) | 2022.08.26 |
[C#/COMMON/.NET6] 제곱근 계산하기 (Math.Sqrt 정적 메소드 미사용) (0) | 2022.08.25 |