Так практичней будет.#include <string>
#include <algorithm>
/***************************************************************************/
std::string get_text(const std::string& str) {
const std::string open_tag("<tag>");
const std::string close_tag("</tag>");
std::string::const_iterator open = std::search(str.begin(), str.end(), open_tag.begin(), open_tag.end());
std::string::const_iterator close= std::search(str.begin(), str.end(), close_tag.begin(), close_tag.end());
if ( open == str.end() || close == str.end() ) {
return std::string();
}
std::advance(open, open_tag.length());
return std::string(open, close);
}
/***************************************************************************/
int main(int argc, const char** argv) {
const std::string str("gkjeihgei<tag>needle text</tag>kjbsbv");
std::string result = get_text(str);
return 0;
}
/***************************************************************************/