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

▶ 대소문자 구분없이 문자열 대체하기 예제

string source = "Hello hello";

Console.WriteLine(ReplaceString(source, "hello", "morning", StringComparison.Ordinal          ));
Console.WriteLine(ReplaceString(source, "hello", "morning", StringComparison.OrdinalIgnoreCase));

 

728x90

 

▶ 대소문자 구분없이 문자열 대체하기

#region 문자열 대체하기 - ReplaceString(source, previousValue, newValue, comparison)

/// <summary>
/// 문자열 대체하기
/// </summary>
/// <param name="source">소스 문자열</param>
/// <param name="previousValue">이전 값</param>
/// <param name="newValue">신규 값</param>
/// <param name="comparison">문자열 비교 방법</param>
/// <returns>대체 문자열</returns>
public string ReplaceString(string source, string previousValue, string newValue, StringComparison comparison)
{
    int previousPosition = 0;

    string target = source;

    int position = target.IndexOf(previousValue, comparison);

    while(position > -1)
    {
        target = target.Remove(position, previousValue.Length);

        target = target.Insert(position, newValue);

        previousPosition = position + newValue.Length;

        position = target.IndexOf(previousValue, previousPosition, comparison);
    }

    return target;
}

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

댓글을 달아 주세요