C# - Replace()로 문자열의 모든 공백 제거

Replace()를 사용하여 string의 앞, 뒤 공백(white space) 뿐만 아니라, 모든 공백을 제거하는 방법을 소개합니다.

1. string.Replace()로 모든 공백 제거

string.Replace(old, new)는 문자열에서 old를 new로 변경합니다.

아래와 같이 Replace()를 이용하여 공백 문자를 빈 문자로 변경하여 제거할 수 있습니다. 결과를 보면 문자열의 앞, 뒤 공백 뿐만 아니라 가운데 있는 공백도 모두 제거된 것을 확인할 수 있습니다.

using System;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            string str = " Hello World ";

            string result = str.Replace(" ", "");
            Console.WriteLine("[" + result + "]");
        }
    }
}

Output:

[HelloWorld]

문자열의 앞, 뒤 공백만 제거하고 싶을 때는 Trim()을 사용해야 합니다. 자세한 내용은 Trim()으로 문자열 앞, 뒤 공백 제거를 참고해주세요.

2. Regex.Replace()로 모든 공백 제거

Regex.Replace(string, pattern, replacement)는 인자로 전달된 문자열에서 정규표현식의 pattern에 해당하는 문자열을 모두 찾아서 replacement로 변경합니다.

이 함수를 이용하여 아래와 같이 문자열의 모든 공백을 제거할 수 있습니다. 정규표현식 \s는 white space 1개를 의미합니다. 즉, 공백 문자를 모두 찾아서 빈 문자열로 교체하여 제거하겠다는 의미가 됩니다.

using System;
using System.Text.RegularExpressions;

namespace Example {
    public class Program {
        public static void Main(string[] args) {

            string str = " Hello World ";

            string result = Regex.Replace(str, @"\s", "");
            Console.WriteLine("[" + result + "]");
        }
    }
}

Output:

[HelloWorld]
Loading script...
codechachaCopyright ©2019 codechacha