Строковые функции. Часть 2
Часть раздела Основы путешествия по C++ на Coddy — урок 71 из 74.
Вот еще несколько полезных функций для строк:
- erase(pos, len): Удаляет len символов, начиная с позиции pos, из текущей строки.
- find(str): Возвращает позицию первого вхождения str в текущей строке. Возвращает объект, который можно сравнить с -1, если вхождение не найдено.
- clear(): Удаляет все символы из строки, делая её пустой.
- empty(): Возвращает true, если строка пуста, и false в противном случае.
Например, используя следующую строку:
std::string str = "Hello, World!";int pos = str.find("World");
// Вывод: pos = 7 (позиция, с которой начинается "World")str.erase(5, 2);
// Результат: "HelloWorld!"str.clear();
// Вывод: "" (пустая строка)bool isEmpty = str.empty();
// Возвращает true, если str не содержит символовЗадание
ЛегкоСоздайте функцию с именем stringSearchOperations, которая принимает строку в качестве входных данных и выполняет следующие операции, используя строковые функции:
- Находит и выводит позицию первого символа пробела в строке.
- Удаляет 4 символа, начиная с позиции 5.
- Проверяет, содержит ли строка слово "You", и выводит "Found" или "Not Found".
- Очищает строку и проверяет, пуста ли она.
- Выводит результаты после каждой операции.
Используйте следующий формат:
Space Found At: [Position of space]
After Erase: [String after erasing]
Contains You: [Found/Not Found]
Is Empty: [true/false]Шпаргалка
Полезные строковые функции в C++:
erase(pos, len): Удаляет len символов, начиная с позиции posfind(str): Возвращает позицию первого вхождения str (возвращает -1, если не найдено)clear(): Удаляет все символы из строкиempty(): Возвращает true, если строка пуста, и false в противном случае
std::string str = "Hello, World!";
int pos = str.find("World");
// pos = 7 (позиция, с которой начинается "World")
str.erase(5, 2);
// Результат: "HelloWorld!"
str.clear();
// Результат: "" (пустая строка)
bool isEmpty = str.empty();
// Возвращает true, если в str нет символовПопробуйте сами
#include <iostream>
#include <string>
void stringSearchOperations(std::string str) {
// Найти первый пробел
// Удалить 4 символа с позиции 5
// Проверить, содержит ли "You"
// Очистить строку и проверить, пуста ли она
}
int main() {
std::string str;
std::getline(std::cin, str);
stringSearchOperations(str);
return 0;
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияИнкремент и декрементПостфиксный инкремент и декрементСокращенные арифметические операцииОператоры сравненияСравнение строк7Основы ввода-вывода
Оператор coutОператор cinВвод строкПовторение — До 120Повторение — Истина или ложь3Переменные. Часть 2
Объявление типовСоглашения об именованииПовторение: инициализация переменныхПриведение типов. Часть 1Приведение типов. Часть 26Принятие решений
Оператор ifКонструкция if - elseОператор switchУсловный операторПовторение: if - elseВложенный if - else9Циклы
Цикл For, часть 1Цикл WhileЦикл Do WhileBreakContinueЦикл For, часть 2Вложенные циклыБесконечные циклыИтоги — Динамический ввод12Строки
C-style строки. Часть 1C-style строки. Часть 2Операции со строкамиСтроковые функции. Часть 1Строковые функции. Часть 2