Например, у меня есть строка:
int random_int = 123; // let's pretend this integer could have various values!!
std::string str = "part1 Hello : part2 " + std::to_string(random_int) + " : part3 World ";
Все части разделены на символы :
Допустим, я хочу найти подстроку от "part2" до следующей символ :
, который будет возвращать part2 123
в этом случае.
Я знаю, как найти позицию "part2" по str.find("part2")
, но я не знаю, как определить длину до затем :
из этого "part2", потому что длина может быть различной длины.
Например, я знаю, что подстрока part3 может быть извлечена с помощью str.substr(str.find("part3"));
, но только потому, что она в конце .. .
Итак, есть ли хитрый способ получить подстроку part2 123
из этой строки?