Find fra Reverse Direction Du kan finne posisjonen til en understreng fra slutten av en hoved streng. Du bruker rfind metoden som syntaks er lik som på funnet metoden. Følgende kode illustrerer dette: # include # include bruker namespace std; int main () {string Str0 = "Ja jeg er den ene Ja jeg gjorde det.."; int pos = str0.rfind ("Ja"); domstol returnere 0; } I denne koden, er det to "Ja" i hovedstrengen. Det er den siste som er funnet, som starter fra indeks 18 (regnet fra venstre).
Det andre argumentet kan brukes som vist i følgende kode: #include #include bruker namespace std; int main () {string Str0 = "Ja jeg er den ene Ja jeg gjorde det.."; int pos = str0.rfind ("Ja", 15); domstol returnere 0; } Du kan bli overrasket over å oppdage at i denne koden er det den første Ja det er funnet. Den rfind Funksjonen søker sub-strengen fra enden av hovedstrengen. Det andre argumentet er målingen fra begynnelsen (til venstre) i hovedstrengen. Det andre argumentet forteller strengen objektet for å starte søket utover sin indeks.
Men med rfind funksjon, betyr utover foran (venstre) av indeksen (15). Index innen Sub String å bli funnet Betrakt følgende kode: #include #include bruker namespace std; int main () {string Str0 = "Ja jeg er den ene Ja jeg gjorde det.."; int pos = str0.find ("Ja", 15); domstol returnere 0; } Den returnerte indeksverdien er 18. Det andre argumentet i find metoden er 15, så søket startet på 15. plass med null basert telling i hovedstrengen. Så den andre "Yes" ble matchet. Den andre "Yes" i hovedstrengen opptar indeksene, 18, 19 og 20.
Hva om det andre argumentet på funnet metoden var noen av disse tallene: 18, 19 eller 20? I denne situasjonen under strengen ville bli funnet bare i tilfellet med 18. Så søket finnes bare i det tilfelle hvor det andre argumentet i søkemetode er indeksen for det første tegnet for sub-strengen i hovedstrengen . Det var for funn metoden. For rfind metoden hvis nummeret for det andre a