Python String find() Metod med exempel

โšก Smart sammanfattning

Python string find() รคr en inbyggd metod som returnerar indexet fรถr den fรถrsta fรถrekomsten av en delstrรคng inom en strรคng. Den returnerar -1 nรคr delstrรคngen inte finns, vilket undviker undantag.

  • ๐Ÿ” Syntax: find() tar en delstrรคng plus valfria start- och slutindex fรถr att begrรคnsa sรถkomrรฅdet.
  • ๐ŸŽฏ Fรถrsta matchen: find() returnerar det lรคgsta indexet fรถr den fรถrsta fรถrekomsten, och skannar frรฅn vรคnster till hรถger.
  • โž– Inte hittad: find() returnerar -1 istรคllet fรถr att generera ett fel nรคr delstrรคngen saknas.
  • ๐Ÿ” rfind(): Metoden rfind() returnerar det hรถgsta indexet och sรถker istรคllet frรฅn hรถger sida.
  • โš ๏ธ index(): Metoden index() beter sig som find() men genererar ett ValueError nรคr delstrรคngen saknas.
  • ๐Ÿค– AI-hjรคlp: AI-kodningsassistenter genererar find()-logik och power substring-sรถkning i NLP-textpipelines.

Python String hitta()

Vad รคr Python String hitta()?

Python String hitta() รคr en funktion som รคr tillgรคnglig i Python bibliotek fรถr att hitta indexet fรถr den fรถrsta fรถrekomsten av en delstrรคng inom en given strรคng. Funktionen find() returnerar -1 istรคllet fรถr att utlรถsa ett undantag nรคr den angivna delstrรคngen inte finns i den givna strรคngen. Det รคr en av Pythonmest anvรคnda strรคngmetoder fรถr att hitta text.

Syntax fรถr Python strรคng hitta()

Den grundlรคggande syntaxen fรถr Python find()-funktionen รคr som fรถljer:

string.find(substring,start,end)

Parametrar fรถr metoden find().

Hรคr รคr de tre parametrarna fรถr find()-funktionen i Python:

  • delstrรคngDelstrรคngen du vill sรถka efter i den givna strรคngen.
  • starta: (valfritt) Startvรคrdet dรคr sรถkningen efter delstrรคngen bรถrjar. Som standard รคr det 0.
  • รคnden: (valfritt) Slutvรคrdet dรคr sรถkningen efter delstrรคngen kommer att sluta. Som standard รคr vรคrdet strรคngens lรคngd.

Exempel pรฅ metoden find() med standardvรคrden

Parametrarna som skickas till Python find()-metoden รคr delstrรคngen, det vill sรคga strรคngen du vill sรถka efter, plus start och slut. Startvรคrdet รคr 0 som standard och slutvรคrdet รคr strรคngens lรคngd.

I det hรคr exemplet anvรคnder vi metoden find() i Python med standardvรคrden.

Metoden find() sรถker efter delstrรคngen och anger positionen fรถr den allra fรถrsta fรถrekomsten av delstrรคngen. Om delstrรคngen fรถrekommer flera gรฅnger i den givna strรคngen returnerar den fortfarande indexet eller positionen fรถr den fรถrsta.

Exempel:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials"))

Produktion:

The position of Tutorials is at: 12

Exempel pรฅ find() med startargument

Du kan sรถka efter delstrรคngen i den givna strรคngen och ange startpositionen dรคr sรถkningen ska bรถrja. Startparametern kan anvรคndas fรถr detta รคndamรฅl.

Exemplet nedan anger startpositionen som 20, och metoden find() i Python bรถrjar sรถkningen frรฅn position 20. Hรคr kommer slutpositionen att vara strรคngens lรคngd, sรฅ den sรถker till slutet av strรคngen frรฅn position 20 och framรฅt.

Exempel:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 20))

Produktion:

The position of Tutorials is at 48

Exempel pรฅ find() med start- och slutargument

Med hjรคlp av parametrarna start och end kan vi begrรคnsa sรถkningen istรคllet fรถr att sรถka i hela strรคngen.

Exempel:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials is at:", mystring.find("Tutorials", 5, 30))

Produktion:

The position of Tutorials is at 12

Exempel pรฅ find()-metoden fรถr att hitta positionen fรถr en given delstrรคng i en strรคng

Vi vet att find() hjรคlper oss att hitta indexet fรถr den fรถrsta fรถrekomsten av en delstrรคng. Den returnerar -1 om delstrรคngen inte finns i den givna strรคngen. Exemplet nedan visar indexet nรคr strรคngen finns och -1 nรคr delstrรคngen vi sรถker efter inte hittas.

Exempel:

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Best site is at:", mystring.find("Best site", 5, 40))
print("The position of Guru99 is at:", mystring.find("Guru99", 20))

Produktion:

The position of Best site is at: 27
The position of Guru99 is at: -1

Python strรคng rfind()

Ocuco-landskapet Python Funktionen rfind() liknar find()-funktionen, med den enda skillnaden att rfind() ger det hรถgsta indexet fรถr den givna delstrรคngen, medan find() ger det lรคgsta, det vill sรคga det allra fรถrsta indexet. Bรฅde rfind() och find() returnerar -1 om delstrรคngen inte finns.

I exemplet nedan har vi en strรคng "Meet Guru99 handledningssajt. Bรคsta sajten fรถr Python Tips och trix!โ€ och kommer att fรถrsรถka hitta positionen fรถr delstrรคngen Handledningar med hjรคlp av find() och rfind(). Delstrรคngen Handledningar fรถrekommer tvรฅ gรฅnger i strรคngen.

Hรคr รคr ett exempel dรคr bรฅde find() och rfind() anvรคnds.

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using rfind() : ", mystring.rfind("Tutorials"))

Produktion:

The position of Tutorials using find() :  12
The position of Tutorials using rfind() :  48

Utdata visar att find() ger indexet fรถr den allra fรถrsta delstrรคngen i Handledningar den hittar, medan rfind() ger det sista indexet fรถr delstrรคngen Handledningar.

Python string index()

Ocuco-landskapet Python strรคng index() รคr en funktion som ger dig positionen fรถr en given delstrรคng, precis som find(). Den enda skillnaden mellan de tvรฅ รคr att index() kastar ett undantag om delstrรคngen inte finns i strรคngen, medan find() returnerar -1.

Hรคr รคr ett fungerande exempel som visar beteendet hos index() och find().

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("Tutorials"))
print("The position of Tutorials using index() : ", mystring.index("Tutorials"))

Produktion:

The position of Tutorials using find() :  12
The position of Tutorials using index() :  12

Vi fรฅr samma position fรถr bรฅde find() och index(). Lรฅt oss se ett exempel nรคr den givna delstrรคngen inte finns i strรคngen.

mystring = "Meet Guru99 Tutorials Site.Best site for Python Tutorials!"
print("The position of Tutorials using find() : ", mystring.find("test"))
print("The position of Tutorials using index() : ", mystring.index("test"))

Produktion:

The position of Tutorials using find() :  -1
Traceback (most recent call last):
  File "task1.py", line 3, in <module>
    print("The position of Tutorials using index() : ", mystring.index("test"))
ValueError: substring not found

I exemplet ovan fรถrsรถker vi hitta positionen fรถr delstrรคngen "test". Delstrรคngen finns inte i den givna strรคngen, sรฅ med find() fรฅr vi positionen -1, men fรถr index() ger det ett fel, som visas ovan.

Fรถr att hitta den totala fรถrekomsten av en delstrรคng

Fรถr att hitta det totala antalet gรฅnger en delstrรคng har fรถrekommit i den givna strรคngen anvรคnder vi funktionen find() i PythonVi loopar igenom strรคngen med hjรคlp av en for-loop frรฅn 0 till slutet av strรคngen, med hjรคlp av startIndex-parametern fรถr find().

Variablerna startIndex och count kommer att initieras till 0. Inuti for-loopen kommer vi att kontrollera om delstrรคngen finns i den givna strรคngen med hjรคlp av find() med startIndex som 0.

Vรคrdet som returneras frรฅn find(), om inte -1, kommer att uppdatera startIndex till indexet dรคr strรคngen hittas och รคven รถka count-vรคrdet.

Hรคr รคr arbetsexemplet:

my_string = "test string test, test string testing, test string test string"
startIndex = 0
count = 0
for i in range(len(my_string)):
    k = my_string.find('test', startIndex)
    if(k != -1):
        startIndex = k+1
        count += 1
        k = 0
print("The total count of substring test is: ", count )

Produktion:

The total count of substring test is:  6

" Lรคra sig mer om Python String split()

Vanliga frรฅgor

Ja. find() matchar delstrรคngen exakt, sรฅ "Hello".find("h") returnerar -1 medan "Hello".find("H") returnerar 0. Konvertera strรคngen med lower() eller upper() fรถrst nรคr du behรถver en sรถkning som inte kรคnsligar fรถr gemener och versaler.

Operatorn `in` returnerar endast True eller False fรถr att visa om en delstrรคng existerar. `find()` gรฅr vidare och returnerar det exakta indexet fรถr den fรถrsta matchningen, eller -1 nรคr delstrรคngen saknas.

Ja. find() accepterar negativa start- och slutindex, vilka rรคknas frรฅn slutet av strรคngen. Till exempel, "Guru99โ€.find(โ€œ9โ€, -2) sรถker endast efter de tvรฅ sista tecknen och returnerar deras position.

Metoden str.find() hittar en matchning i taget. Fรถr alla matchningar i ett enda anrop, anvรคnd re-modulen: re.findall() returnerar varje matchande delstrรคng, och re.finditer() ger matchningsobjekt med varje startposition.

find() รคr en metod som endast anvรคnder strรคngar, sรฅ att anropa den pรฅ en lista genererar ett AttributeError. Fรถr att hitta ett objekt i en lista eller tupel, anvรคnd istรคllet metoden index(), som returnerar positionen fรถr den fรถrsta matchningen.

Ja. Fรถr en enkel delstrรคngsรถkning รคr find() implementerat i C och kรถrs snabbare รคn att kompilera ett reguljรคrt uttryck. Anvรคnd re-modulen endast nรคr du behรถver mรถnster, jokertecken eller flera trรคffar.

Inom maskininlรคrning och NLP lokaliserar find() nyckelord, taggar eller avgrรคnsare samtidigt som text rengรถrs och tokeniseras. Att detektera om en delstrรคng finns, eller var den sitter, hjรคlper till att bygga funktioner och analysera modellindata.

Ja. GitHub Copilot autokompletterar find(), rfind() och index()-anrop frรฅn en kort kommentar som beskriver ditt mรฅl. Agentics AI-verktyg gรฅr lรคngre, skriver sรถklogiken, lรคgger till start- och slutargument och kรถr dina tester.

Sammanfatta detta inlรคgg med: