[Python] 문자열 중간 공백 제거, 4가지 방법
July 19, 2024
문자열 중간에 있는 공백들을 제거하는 방법에 대해서 알아보겠습니다.
1. replace()를 이용한 방법
replace(a, b)
는 문자열에서 a를 b로 변경합니다. 이것을 이용하여 아래와 같이 공백 문자를 빈문자열로 변환하여 제거할 수 있습니다.
- 중간 공백 뿐만 아니라 앞, 뒤 공백도 제거됨
original_string = "Hello World"
cleaned_string = original_string.replace(" ", "")
print(cleaned_string)
Output:
HelloWorld
2. 정규표현식을 이용한 방법
sub(pattern, repl, string)
는 string 문자열에서 pattern에 일치하는 모든 문자열을 repl로 변경합니다.
이것을 이용하여 아래와 같이 공백 문자를 빈문자열로 변환하여 제거할 수 있습니다.
- 중간 공백 뿐만 아니라 앞, 뒤 공백도 제거됨
- 패턴에서
\s
는 공백을 의미,+
는 앞의 패턴이 1개 이상 반복되는 패턴
import re
original_string = "Hello World"
cleaned_string = re.sub(r'\s+', '', original_string)
print(cleaned_string)
Output:
HelloWorld
3. split()을 이용한 방법
string.split()
은 공백으로 문자열을 분리하고 리스트로 분리된 문자열들을 리턴합니다. 이 리스트를 join()
으로 하나의 문자열로 연결하면 공백이 제거된 문자열을 만들 수 있습니다.
- 중간 공백 뿐만 아니라 앞, 뒤 공백도 제거됨
original_string = "Hello World"
word_list = original_string.split()
cleaned_string = ''.join(word_list)
print(cleaned_string)
Output:
HelloWorld
4. List comprehension을 이용한 방법
아래와 같이 리스트 컴프리헨션으로 각 문자를 순회하면서 공백 문자를 제거할 수 있습니다.
- 중간 공백 뿐만 아니라 앞, 뒤 공백도 제거됨
original_string = "Hello World"
cleaned_string = ''.join([char for char in original_string if not char.isspace()])
print(cleaned_string)
Output:
HelloWorld