Find fra Reverse Direction Du kan finde placeringen af en sub snor fra enden af en vigtigste streng. Du bruger rfind metode, hvis syntaks svarer til af fundet metoden. Følgende kode illustrerer dette: #include #include hjælp namespace std; int main () {string Str0 = "Ja jeg er den ene Ja, jeg gjorde det.."; int pos = str0.rfind ("Ja"); cout returnere 0; } I denne kode, der er to "Ja" i de vigtigste streng. Det er den sidste, der findes, som begynder fra indeks 18 (talt fra venstre).
Det andet argument kan anvendes som illustreret i følgende kode: # include # include hjælp namespace std; int main () {string Str0 = "Ja jeg er den ene Ja, jeg gjorde det.."; int pos = str0.rfind ("Ja", 15); cout returnere 0; } Du kan blive overrasket over at opdage, at i denne kode er det første Ja, der er fundet. Den rfind funktion søger sub-string fra slutningen af det vigtigste streng. Det andet argument er måling fra begyndelsen (venstre) af de vigtigste streng. Det andet argument fortæller strengeobjektet at starte søgningen uden sit indeks.
Men med rfind funktion, ud over betyder foran (venstre) af indekset (15). Indeks indenfor Sub String findes Betragt følgende kode: # include # include hjælp namespace std; int main () {string Str0 = "Ja jeg er den ene Ja, jeg gjorde det.."; int pos = str0.find ("Ja", 15); cout returnere 0; } Den returnerede indeksværdi er 18. Det andet argument i fund metoden er 15, så søgningen startede på det 15. position med nul baseret optælling i de vigtigste streng. Så den anden "Ja" blev matchet. Den anden "Ja" i de vigtigste strengen optager indeksene, 18, 19 og 20.
Hvad hvis det andet argument af fundet metoden var nogen af disse numre: 18, 19 eller 20? I denne situation ville blive fundet sub-strengen kun i tilfælde af 18. Så søgningen findes kun i det tilfælde, hvor det andet argument i fund metoden er indekset for det første tegn for sub-strengen i de vigtigste strengen . Det