문자열 파이썬에서 하위 문자열 찾기

10912 단어 pythontutorialdev
찾기, 색인 및 입력은 위치를 찾거나 문자열에서 하위 문자열 또는 문자를 찾는 데 사용하는 방법입니다. 찾기 중 하나를 사용하려면 문자열을 작성한 다음 점 다음에 하위 문자열 또는 문자를 입력하여 아래 수식과 같이 찾습니다.str.find(substring) , str.index(substring)subtring in string.

찾다



find는 문자열에서 부분 문자열을 찾거나 검색하는 데 사용됩니다. 문자열 내에서 하위 문자열이 있는 문자열의 가장 낮은 인덱스를 반환합니다. find 메소드에 대한 부분 문자열이 발견되지 않으면 -1을 반환합니다.
다음 예를 사용하여 문장에서 단어를 찾아봅시다.

sentence="ayomide is in the kitchen" 
findIs=sentence.find("is") 
print(findIs) #return 8

findMid= sentence.find("mid") 
print(findMid) #return 3

findWas=sentence.find("was")
print(findWas) # return -1

findAyo= sentence.find("ayo") #return 1
print(findAyo)

findIce= sentence.find('ice') #return -1
print(findIce)


위의 코드는 각각 8,3,-1,1 및 -1을 인쇄했는데, 이는 0에서 시작하여 단어 "is"를 처음 발견한 위치까지 각 문자(공백이 있는 문자) 8개를 반환하는 첫 번째 인쇄 기능을 의미합니다. FindMid는 "a-y-o"뒤에도 찾을 수 있기 때문에 3을 반환하고 findAyo는 문자 없이 "ayo"라는 단어가 발견되기 때문에 0을 반환합니다. 다른 사람들은 단어를 찾을 수 없다는 사실에 대해 부정적입니다.
따라서 위의 예에서 find()는 문자열에서 하위 문자열을 검색하고 발견되면 해당 위치를 반환하고 찾지 못하면 -1을 반환합니다.

인덱스 방법



find와 매우 유사한 또 다른 String 메소드는 Index 함수입니다. find와 같은 방식으로 사용되며, index와 find 메소드의 유일한 차이점은 하위 문자열을 찾을 수 없는 경우 해당 인덱스 반환 오류입니다. 다음 코드를 확인해 보겠습니다.

sentence="ayomide is in the kitchen"
indexIs=sentence.index("is") 
print(indexIs) #return 8

indexMid= sentence.index("mid")
print(indexMid) #return 3

indexAyo= sentence.index("ayo") #return 1
print(indexAyo)

findWas=sentence.index("was")
print(indexWas) # return errror

indexIce= sentence.find('ice') #return error
print(indexIce)



보시다시피 각각은 find 메소드가 -1을 리턴하는 오류를 리턴한다는 점을 제외하고는 처음에 find 메소드가 수행한 것과 동일한 작업을 수행합니다.

방법에서



in method*는 찾기 및 인덱싱과 다르며 true 또는 false만 검색하고 반환합니다. 부분 문자열이 발견되면 true를 반환하고 그렇지 않으면 false를 반환합니다. In을 사용하려면 아래 공식과 같이 하위 문자열을 작성한 다음 in 다음에 문자열을 작성합니다.
문자열의 부분 문자열
다음 코드를 시도해 보겠습니다.

sentence = 'maxwizard is the programmer'
isThefound= 'the' in sentence #return true
print(isThefound)

isMaxwizFound='maxwiz' in sentence #return true
print(isMaxwizFound)

print('a' in 'aeiou') #return true
print('o' in 'aeiou') #return true

print('ao' in 'aeiou') #return false
#Note: ao is not there because “o” doesn’t follow “a” anywhere in “aeiou”



이제 세 가지 기능 모두에 대한 더 많은 예를 함께 해 보겠습니다.

alphabet="abcdefghijklmnoprstuvwxyz"
consonant="bcdfghjklmnpqrstvwxyz" 
vowel ='aeiou'
searchE =consonant.find('e') #search the position of  ‘e’ in the consonant 
print(searchE) #  return -1

indexAe=vowel.index('ae') #search the position of ‘ae’ in the vowel
print(indexAe) # return 0

isVowelThere= vowel in alphabet # check if ‘aeiou’ in alphabet
print(isVowelThere) #return false 
#Note isVowel-there return false because “a-e-i-o-u” are not in that order in alphabet

print('love' in 'I love you') #return true
print('0' in '080898') #return true



마지막 예제를 시도해보자

telNumber='08035265643'
print('8' in telNumber)#return 

print(telNumber.find('080'))# return 0
print(telNumber.index('643'))#return 8

print(telNumber.find('44'))#return -1 

sentence = maxwizard is the name of the writer
isTitifound = titi in sentence #retun false
print(isTitiFound)


간단히 말해서 찾기 및 색인은 부분 문자열의 위치를 ​​찾는 반면 in은 부분 문자열이 실제로 문자열에 있는지 또는 거짓인지 확인하는 데 사용됩니다. find return -1 동안 하위 문자열을 찾지 못하면 인덱스 반환 오류가 발생합니다. 그래서 나는 당신을 위해 찾기를 추천했습니다. 코딩은 재미있다! 즐기다!

좋은 웹페이지 즐겨찾기