*   >> läser Utbildning artiklar >> science >> programming

C ++ Sträng Operations

umentet, som är frivillig, är positionen i huvudsträngen där du vill söka för att börja. Kom ihåg: att räkna tecken i en sträng börjar från noll. Följande kod illustrerar användningen av det andra argumentet och det returnerade värdet är -1, vilket indikerar att under strängen hittades inte: #include #include using namespace std; int main () {string Str0 = "Ja, jag är en."; int pos = str0.find ("är den", 7); cout återvända 0; } Från koden ser vi att undersöksträngen från index 6, men det andra argumentet är 7.

Sök från Reverse Direction Du kan hitta positionen för en understräng från slutet av en huvud sträng. Du använder rfind metod vars syntax liknar den hos find -metoden. Följande kod illustrerar detta: #include #include using namespace std; int main () {string Str0 = "Ja, jag är den Ja, jag gjorde det.."; int pos = str0.rfind ("Ja"); cout återvända 0; } I denna kod finns det två "Ja" i huvudsträngen. Det är den sista en som hittas, som börjar från index 18 (räknat från vänster).

Det andra argumentet kan användas som visas i följande kod: #include #include using namespace std; int main () {string Str0 = "Ja, jag är den Ja, jag gjorde det.."; int pos = str0.rfind ("Ja", 15); cout återvända 0; } Du kan bli förvånad över att upptäcka att i den här koden är den första Ja, det finns. Den rfind Funktionen söker understrängen från slutet av den viktigaste strängen. Det andra argumentet är mätningen från början (vänster) av huvudsträngen. Det andra argumentet berättar strängen objektet för att börja söka efter sitt index.

Men med rfind funktionen innebär utöver framför (vänster) av indexet (15). Index inom Sub String återfinns Tänk på följande kod: #include #include using namespace std; int main () {string Str0 = "Ja, jag är den Ja, jag gjorde det.."; int pos = str0.find ("Ja", 15); cout återvända 0; } Det returnerade indexvärdet är 18. Det andra argumentet i find metoden är 15, så sökandet inleddes på 15: e plats med noll baserad räkning i huvudsträngen. Så den andra "Ja" matchades. Den andra "ja" i huvudsträngen upptar indexen, 18, 19 och 20.

Vad händer om det andra argumentet i find -metoden var någon av dessa siffror: 18, 19 eller 20? I denna situation skulle hittas understrängen endast vid 18 Så sökningen återfinns endast i det fall där det andra argumentet i find -metoden är indexvärdet för det första tecknet för understrängen i huvudsträngen . Det var för find -metoden. För rfind metoden om numret för det andra argumentet är mindre än 18 sedan den andra

Page   <<  [1] [2] [3] >>
Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.