[Python] 문자열 비교하기

이 글은 문자열 완전 일치 / 부분 일치 / 전방 일치 / 후방 일치에 관한 기록입니다.

문자열 비교

두 문자열을 비교하는 데에는 다음과 같은 4가지 종류가 있습니다.

  • 완전 일치 : == !=
  • 부분 일치 : in not in
  • 전방 일치 : startswith
  • 후방 일치 : endswith

완전 일치

문자열이 완전하게 일치하는지 비교하는 데에는 ==!=이 사용됩니다. ==는 두 문자열이 완전히 일치하면 True, 일치하지 않으면 False를 반환합니다.!=는 두 문자열이 일치하지 않으면 True, 완전히 일치하면 False를 반환합니다.

'ABC'=='ABC'
True
'ABC'=='abc'
False
'ABC'!='ABC'
False
'ABC'!='abc'
True

부분 일치

문자열이 부분적으로 일치하는지 비교하는 데에는 innot in이 사용됩니다. in은 어떤 문자열이 다른 문자열에 부분적으로 존재하면 True, 존재하지 않으면 False를 반환합니다. not in은 어떤 문자열이 다른 문자열에 존재하지 않으면 True, 부분적으로 존재하면 False를 반환합니다.

'Feat.' in '에잇(Prod.&Feat. SUGA of BTS)'
True
'Feat.' not in '에잇(Prod.&Feat. SUGA of BTS)'
False

전방 일치

문자열이 전방에서 일치하는지 비교하는 데에는 startswith가 사용됩니다. startswith는 문자열이 해당 패턴으로 시작하면 True, 시작하지 않으면 False를 반환합니다. 패턴을 여러 개 지정할 경우 문자열이 이들과 하나라도 전방 일치 한다면 True를 반환합니다.

phonenumber = '010-1234-5678'
phonenumber.startswith('010')
True
phonenumber = '010-1234-5678'
phonenumber.startswith('011')
False
phonenumber = '010-1234-5678'
phonenumber.startswith(('010', '011'))
True

후방 일치

문자열이 전방에서 일치하는지 비교하는 데에는 endswith가 사용됩니다. endswith는 문자열이 해당 패턴으로 끝나면 True, 끝나지 않으면 False를 반환합니다. 패턴을 여러 개 지정할 경우 문자열이 이들과 하나라도 후방 일치 한다면 True를 반환합니다.

name = '김대한 씨'
name.endswith('씨')
True
name = '김대한 씨'
name.endswith('님')
False
name = '김대한 씨'
name.endswith(('씨', '님'))
True

태그:

카테고리:

업데이트:

댓글남기기