3.2.7. Ichki satrlarni olish. at funksiyasidan foydalanib satrdan bitta belgini olishimiz mumkin. Shuningdek, biz substr funksiyasidan foydalangan holda, satrdan ichki satrni olishimiz ham mumkin (3.6-rasm).
3.6-rasm. string sinfi ichki satrni olish funksiyalarini taqdim etadi. Misol uchun,
string s1("Salom");
cout<< s1.substr(0, 1) << endl; //S ni qaytaradi cout<< s1.substr(2) << endl; //lom ni qaytaradi cout<< s1.substr(1, 3) << endl; //alo ni qaytaradi 3.2.8. Satrdan qidirish. Satrdan biror ichki satr yoki bitta belgini qidirish uchun find funksiyasidan foydalanishimiz mumkin (3.7-rasm). Agar so`raglan qism topilmasa, funksiya string::npos (not a position – bu joyda yo`q) natijasini qaytaradi. Bu yerda npos – stringsinfda aniqlangan o`zgarmas.
3.7-rasm.string sinfi ichki satrni qidirish funksiyalarini taqdim etadi. Misol uchun,
string s1("Welcome to HTML");
cout<< s1.find("co") << endl; // 3 ni qaytaradi
cout<< s1.find("co", 6) << endl; // string::npos ni qaytaradi
cout<< s1.find('o') << endl; // 4 ni qaytaradi
cout<< s1.find('o', 6) << endl; // Vozvrashayet 9
3.2.9. Satr kiritish va almashtirish Satrda ichki satrni kiritish yoki almashtirish uchun insertvareplace funksiyalaridan foydalanishimiz mumkin (3.8-rasm).
string
Joriy satrning berilgan indeks o`rnidan boshlab s ichki satrni kiritadi
Joriy satrning berilgan indeks o`rnidan boshlab ch belgini nmarta kiritadi
Joriy satrning berilgan indeks o`rnidan boshlab n ta belgini s satr bilan almashtiradi
3.8-rasm. string sinfi satr kiritish va almashtirishfunksiyalarini taqdim etadi. Bu yerda insertvareplace funksiyalaridan foydalanishga oid misollar keltirilgan:
string s1("Welcome to HTML");
s1.insert(11, "C++ and ");
cout<< s1 << endl; // s1 ning qiymati:Welcome to C++ and HTML string s2("AA");
s2.insert(1, 4, 'B');
cout<< s2 << endl; // s2 ning qiymati:ABBBBA string s3("Welcome to HTML");
s3.replace(11, 4, "C++");
cout<< s3 << endl; // s3 ning qiymati:Welcome to C++