백견이 불여일타/Python

[Python] 문자 데이터 가공 | 문자열 대체 메서드 replace()

jhy_2023 2024. 8. 29. 17:50
728x90
반응형

해당 책을 참고하여 작성하였습니다.


문자열을 대체하는 replace() 메서드는 매우 유용하게 사용됩니다.
이번 글에서는 replace() 메서드의 사용법을 다양한 예제와 함께 알아보겠습니다.


replace() 메서드란?

replace() 메서드는 문자열 내에서 특정 문자를 다른 문자로 대체하는 기능을 합니다. 기본 구문은 다음과 같습니다:

문자열.replace(old, new, [count])

 

  • old: 대체할 대상 문자열
  • new: 새로 대체할 문자열
  • count (선택 사항): 대체할 횟수 (지정하지 않으면 모든 발생을 대체)

 

 예제 1: 문자열 분리 후 재결합 

아래 예제에서는 전화번호에서 하이픈(-)을 제거하고 다시 연결하는 방법을 보여줍니다. 이 과정에서는 replace()를 사용하지 않고 문자열 슬라이싱을 사용해보겠습니다.

print("010-1234-5678"[:3] + "010-1234-5678"[4:8] + "010-1234-5678"[9:])
# 출력: 01012345678

이 코드는 "01012345678"을 출력합니다. 하이픈이 위치한 인덱스를 이용해 문자열을 분리하고, 각 부분을 다시 합쳐 하나의 문자열로 만듭니다.


예제 2: 문자열 내 특정 문자 대체

이번 예제에서는 replace() 메서드를 사용해 하이픈(-)을 별표(*)로 대체하는 방법을 보여줍니다.

print("집" + "010-1234-5678".replace("-", "*"))
# 출력: 집010*1234*5678

이 코드는 "집010*1234*5678"을 출력합니다. "010-1234-5678" 문자열 내의 모든 하이픈이 별표로 대체되었습니다.

반응형


예제 3: 문자열과 문자 대체 결합 

여기서는 문자열 "집"을 "회사"로 대체하고, 동시에 전화번호의 하이픈을 별표로 대체하는 예제를 살펴보겠습니다.

print("집".replace("집", "회사") + "010-1234-5678".replace("-", "*"))
# 출력: 회사010*1234*5678

이 코드는 "회사010*1234*5678"을 출력합니다. "집"은 "회사"로, 전화번호의 하이픈은 별표로 대체되었습니다.

728x90


예제 4: 국제 전화번호 코드 변경

다음 예제에서는 국제 전화번호 코드와 전화번호 내의 문자를 모두 대체하는 방법을 보여줍니다.

print("+82 010-1234-5678".replace("-", "*").replace("+82", "+44"))
# 출력: +44 010*1234*5678

이 코드는 " +44 010*1234*5678"을 출력합니다. 한국의 국제 전화번호 코드 +82가 영국의 국제 전화번호 코드 +44로 대체되었고, 전화번호 내의 하이픈도 별표로 대체되었습니다.


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

728x90
반응형