В C++ существует несколько способов вставить элемент в строку после определенного условия.
1. С использованием функции std::string::insert()
:
Данная функция позволяет вставить элементы другой строки, символа или подстроки в указанную позицию строки. Пример использования:
std::string str = "Hello, world!"; std::string insertStr = " beautiful"; // Находим позицию, после которой хотим вставить элемент. size_t pos = str.find("world"); // Если позиция найдена, то вставляем элемент. if (pos != std::string::npos) { str.insert(pos + 5, insertStr); // Вставляем " beautiful" после позиции "world". }
2. С использованием оператора +=
:
Оператор +=
является оператором конкатенации для строк (std::string
) в C++. Пример использования:
std::string str = "Hello, world!"; std::string insertStr = " beautiful"; std::string searchStr = "world"; // Находим позицию, после которой хотим вставить элемент. size_t pos = str.find(searchStr); // Если позиция найдена, то вставляем элемент. if (pos != std::string::npos) { str += insertStr; // Конкатенация строки. }
В обоих примерах мы используем функцию std::string::find()
, чтобы найти позицию условия (в данном случае строку "world"). Если позиция условия найдена (std::string::npos
- константа, которая возвращается, когда позиция не найдена), мы используем один из методов вставки, чтобы вставить необходимый элемент (в данном случае строку " beautiful") в указанную позицию.