Как вставить элемент в строку после определенного условия?

В 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") в указанную позицию.