[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:
HelloWorld2. 정규표현식을 이용한 방법
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:
HelloWorld3. split()을 이용한 방법
string.split()은 공백으로 문자열을 분리하고 리스트로 분리된 문자열들을 리턴합니다. 이 리스트를 join()으로 하나의 문자열로 연결하면 공백이 제거된 문자열을 만들 수 있습니다.
- 중간 공백 뿐만 아니라 앞, 뒤 공백도 제거됨
original_string = "Hello World"
word_list = original_string.split()
cleaned_string = ''.join(word_list)
print(cleaned_string)Output:
HelloWorld4. List comprehension을 이용한 방법
아래와 같이 리스트 컴프리헨션으로 각 문자를 순회하면서 공백 문자를 제거할 수 있습니다.
- 중간 공백 뿐만 아니라 앞, 뒤 공백도 제거됨
original_string = "Hello World"
cleaned_string = ''.join([char for char in original_string if not char.isspace()])
print(cleaned_string)Output:
HelloWorld