Python

[Python] 파이썬 문자열 찾기 (find, rfind, startswith, endswith)

소혜아빠 2021. 1. 26. 21:20
  • find(찾을 문자, 찾기 시작할 위치, 찾기를 끝맺을 위치)

>> hangeuls = "가나다라마바사아자차카타파하"
>> hangeuls.find('사')
6

>> hangeuls.find('가')
0

>> hangeuls.find('사', 7)
-1

문자열의 왼쪽부터 문자를 찾음.

찾으면 처음 찾은 문자의 위치를 반환. 못찾으면 '-1'을 반환

단, 찾기 시작할 위치와 찾기를 끝맺을 위치는 별도 지정없으면 문자열 전체를 탐색함.

  • rfind(찾을 문자, 찾기 시작할 위치, 찾기를 끝맺을 위치)

>> english = "adcjdklcmdl"

>> english.find('c')
2

>> english.rfind('c')
7

문자열에서 중복된 문자가 있으면, 문자열 중 가장 끝에 있는 위치를 반환함

찾으면 처음 찾은 문자의 위치를 반환. 못찾으면 '-1'을 반환

단, 찾기 시작할 위치와 찾기를 끝맺을 위치는 별도 지정없으면 문자열 전체를 탐색함.

  • startswith(시작하는 문자(열), 시작지점)

>>>> file_name = "2020_보고서.xlsx"
>>>> file_name.startswith('2020')
True

문자열이 특정문자로 시작하는지 알려줌.

True나 False를 반환.

여러 문장을 찾아보고 싶으면 (값, 값 ...)의 튜플 변수를 넣어줘야함.

단, 시작지점을 별도 지정하지 않으면 처음부터 확인함.

  • endswith(끝나는 문자(열), 문자열의 시작, 문자열의 끝)

>>>> file_name = "보고서.xlsx"
>>>> file_name.endswith(("xlsx", "xls"))
True

문자열이 특정문자로 끝나는지 알려줌.

True나 False를 반환.

여러 문장을 찾아보고 싶으면 (값, 값 ...)의 튜플 변수를 넣어줘야함.

단, 문자열의 시작과 끝은 별도 지정하지 않으면 처음부터 끝까지 확인함.