Void main (). string s1("прекрасная королева"), s2("ле"),
{
string s1("прекрасная королева"), s2("ле"),
s3("корова");
cout <<"s1= " << s1 << endl;
cout <<"s2= " << s2 <<endl;
cout <<"s3= " << s3 <<endl;
// Застосування функції insert;
cout <<"після insert:" << endl;
cout << "s3= " << s3.insert(4, s2) << endl;
cout << "s3= " << s3.insert(7, "к") << endl;
// Застосування функції erase:
s1.erase(0,3);
cout << "після erase:" << endl;
cout << "s1= " << s1.erase(12, 2) << endl;
// Застосування функції replace;
cout << "після replace:" << endl;
cout << "s1= " << s1.replace(0, 3, s3, 4, 2) << endl;
}
Результат роботи програми:
s1= прекрасная королева
s2= ле
s3- корова
після insert:
s3= королева
s3= королевка
після erase:
s1= красная корова
після replace:
s1= лесная корова
7.2.3 Пошук підрядків
Для пошуку в класі string передбачена велика різноманітність функцій. Нижче приведені основні:
size_type find(const string&str,size_type pos=0) const;
Шукає саме ліве входження рядка str в рядок, який викликає функцію, починаючи з позиції pos, і повертає позицію рядка або npos, якщо рядок не знайдений.
size_type find(char c, size_type pos = 0) const;
Шукає саме ліве входження символу c рядок, який викликає функцію, починаючи з позиції pos, і повертає позицію символу або npos, якщо символ не знайдений.
size_type rfind(const string&str,size_type pos=npos) const;
Шукає саме праве входження рядка str в рядок, який викликає функцію, до позиції pos, і повертає позицію рядка або npos, якщо рядок не знайдений.
size_type rfind(char c, size_type pos = npos) const;
Шукає саме праве входження символу c в рядок, який викликає функцію, до позиції pos, і повертає позицію символу або npos, якщо символ не знайдений.
size_type find_first_of(const string& str,
size_type pos = 0) const;
Шукає саме ліве входження будь-якого символу рядка str в рядок, який викликає функцію, починаючи з позиції pos, і повертає позицію символу або npos, якщо входження не знайдене.
size_type find_first_of(char c, size_type pos=0) const;
Шукає саме ліве входження символу c в рядок, який викликає функцію, починаючи з позиції pos, і повертає позицію символу або npos, якщо входження не знайдене.
size_type find_last_of(const string& str,
size_type pos = npos) const;
Шукає саме праве входження будь-якого символу рядка str в рядок, який викликає функцію, починаючи з позиції pos, і повертає позицію символу або npos, якщо входження не знайдене.
size_type find_last_of(char c, size_type pos=npos) const;
Шукає саме праве входження символу с в рядок, який викликає функцію, починаючи з позиції pos, і повертає позицію символу або npos, якщо входження не знайдене.
size_type find_first_not_of(const string& str,
size_type pos = 0) const;
Шукає саму ліву позицію, починаючи з позиції pos, для якої жоден символ рядка str не збігається з символом рядка, який викликає функцію.
size_type find_first_not_of(char c, size_type pos=0) const;
Шукає саму ліву позицію, починаючи з позиції pos, для якої символ с не збігається з символом рядка, який викликає функцію.
size_type find_last_not_of(const string& str,
size_type pos = npos) const;
Шукає саму праву позицію до позиції pos, для якої жоден символ рядка str не збігається з символом рядка, який викликає функцію.
size_type find_last_not_of(char c,
size_type pos = npos) const;
Шукає саму праву позицію до позиції pos, для якої символ с не збігається з символом рядка, який викликає функцію.
Для кожної функції існує варіант, що дозволяє шукати в заданому рядку підрядки старого стилю.
Приклад застосування функцій пошуку:
#include <string>
#include <iostream>
using namespace std;
Дата добавления: 2014-12-26; просмотров: 721;