[Python] 문자열 마지막 문자 제거, 3가지 방법
July 19, 2024
문자열의 마지막 문자를 제거하는 방법에 대해서 알아보겠습니다.
마지막 문자에 ”,“가 붙어있거나, 어떤 문자가 붙어있을 때 이것을 제거하고 싶을 때가 있는데요. 예제와 함께 제거 방법을 알아보겠습니다.
1. 리스트 슬라이싱을 이용한 방법
text[:-1]
는 문자열 text에서 Index 0부터 문자열 마지막 Index 바로 이전까지만 잘라서 문자열로 리턴합니다.
text[:-1]
는"Hello World!"
에서 마지막 문자를 제외한 나머지를 잘라서 리턴
text = "Hello World!"
new_text = text[:-1]
print(new_text)
Output:
Hello World
2. rstrip()을 이용한 방법
str1.rstrip(str2)
는 str1이 str2로 끝나면, 문자열에서 str2를 제거합니다.
아래와 같이 문자열이 특정 문자로 끝날 때 제거하도록 하거나, 항상 마지막 문자를 제거하도록 구현할 수 있습니다.
text.rstrip("!")
: text의 끝이 !로 끝나면 ! 제거text.rstrip(text[-1])
:text[-1]
은 text의 마지막 문자열 리턴, 즉, 이 코드는 마지막 문자열을 제거
text = "Hello World!"
# 마지막 문자에 특정 문자가 있을 때만, 마지막 문자 제거
new_text = text.rstrip("!")
print(new_text)
# 항상 문자열의 마지막 문자 제거
new_text = text.rstrip(text[-1])
print(new_text)
Output:
Hello World
Hello World
3. 정규표현식을 이용한 방법
re.sub(pattern, repl, text)
는 text에서 pattern과 일치하는 문자열을 repl로 변경합니다.
이것을 이용하여 아래 처럼 마지막 문자 패턴으로 마지막 문자만 제거할 수 있습니다.
- 패턴
$
는 문자열의 끝을 의미.$
는 문자열 마지막 문자이며,(.)$
는 마지막 문자를 그룹으로 설정 re.sub(pattern, '', text)
: text에서 마지막 문자를''
으로 대체하여 제거
import re
text = "Hello World!"
pattern = r'(.)$'
new_text = re.sub(pattern, '', text)
print(new_text)
Output:
Hello World