■ 대소문자 구분없이 문자열을 대체하는 방법을 보여준다.
▶ 대소문자 구분없이 문자열 대체하기 예제 (C#)
1 2 3 4 5 6 |
string source = "Hello hello"; Console.WriteLine(ReplaceString(source, "hello", "morning", StringComparison.Ordinal )); Console.WriteLine(ReplaceString(source, "hello", "morning", StringComparison.OrdinalIgnoreCase)); |
▶ 대소문자 구분없이 문자열 대체하기 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
#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 |