Developer/Python

파이썬에서 특정 문자열 바꾸는 replace 함수

빠르크의3분강좌 2023. 8. 3. 11:13
반응형

파이썬에서 특정 문자열 바꾸는 replace 함수

들어가기

파이썬에서는 다양한 문자열 조작 함수를 제공합니다. 이 함수를 통해 효율적으로 문자열을 처리할 수 있도록 지원하고 있습니다. 그 중에서  특정 문자열을 처리할 수 있는 replace() 함수에 대해 알아보겠습니다. replace() 함수를 이용하여 특정 문자열을 다른 문자열로 대체할 수 있으며 문자열 작업 시 유용한 기능을 제공합니다.

 

replace() 함수 소개

replace() 함수는 문자열에서 특정 부분 문자열을 다른 문자열로 대체해주는 파이썬에 내장된 함수입니다. 이 함수를 사용하면 원본 문자열을 변경하지 않고 새로운 문자열을 반환할 수 있습니다. 예를 들면 ':' 이란 특수문자를 "#'로 변경할 수 있습니다. 

 

replace() 함수의 구문과 매개변수

replace() 함수의 구문은 다음과 같습니다.

변환된_문자열 = 원본_문자열.replace(찾을_문자열, 대체_문자열, [대체_횟수])
  1.  원본_문자열 : 대상이 되는 원본 문자열 입니다.
  2. 찾을_문자열: 원본 문자열에서 대체하고자 하는 특정 문자열입니다.
  3. 대체_문자열: 찾을 문자열을 대체할 새로운 문자열입니다.
  4. [대체_횟수]: (옵션) 이 매개변수는 대체할 횟수를 지정하는데 생략하면 모든 해당 문자열이 대체됩니다.

replace() 함수 사용 예시

'a:b:c:d' 라는 문자열에서 : 을 #으로 바꾸고자 한다면 다음과 같이 replace() 함수를 이용해 변경할 수 있습니다.

a = "a:b:c:d"
b = a.replace(":", "#)

"파이썬" 이란 글자를 "python"으로 변경해보는 코드입니다.

원본_문자열 = "파이썬은 파이썬이라는 언어입니다."
대체_문자열 = "Python"

변환된_문자열 = 원본_문자열.replace("파이썬", 대체_문자열)
print(변환된_문자열)  # 출력 결과: "Python은 Python이라는 언어입니다."

대소문자 구분을 고려한 replace() 의 예시를 살펴보겠습니다.

 

"Apple" 과 "apple" 이렇게 두 개의 단어가 있습니다.

대소문자를 구별한다면 두 단어는 다른 단어입니다.

그 중에서 소문자로만 구성된 apple을 Orange로 대체하는 코드입니다. 

원본_문자열 = "Apple and apple are different."
대체_문자열 = "Orange"

변환된_문자열 = 원본_문자열.replace("apple", 대체_문자열)
print(변환된_문자열)  # 출력 결과: "Apple and Orange are different."

 

replace()함수의 장단점

replace() 함수는 간단하고 편리하게 문자열을 대체하여 변경할 수 있습니다. 또한 대소문자를 구분하고 대체할 수 있습니다. 하지만 정규식을 사용할 수 없다는 한계가 있습니다. 정규식을 활용하고자 한다면 re.sub() 함수를 이용합니다.

 

또한 하나의 문자열만 대체할 수 있기 때문에 여러 개를 한 번에 대체하려면 여러 번 호출해야 합니다.